Τίτλοι τέλους για το Codebender (online Arduino IDE)

Δευτέρα, 24 Οκτωβρίου 2016


Το Codebender μας ανακοίνωσε πριν λίγες ημέρες τον τερματισμό της λειτουργίας του online Arduino IDE. Άσχημα τα νέα λοιπόν για τους Arduino developers που είχαν "βολευτεί" με αυτό το καταπληκτικό εργαλείο. Τέλος το cloud hosting, τέλος και η άμεση χρήση των βιβλιοθηκών που χρησιμοποιούσαμε με τόση ευκολία.

Φυσικά οι developers του Codebender δεν τρελάθηκαν μια μέρα και είπαν "τέλος, βαρέθηκα, κλείνω". Το Codebender δημιουργήθηκε πριν 4 περίπου χρόνια, εδώ στην Ελλάδα, και πιο συγκεκριμένα στην Πάτρα. Στηρίζοντας το ανοικτό λογισμικό η υπηρεσία ήταν δωρεάν, εκτός απ' Arduino projects που ήθελες να κρατήσεις "κρυφά". Όπως μας εξηγεί ο ιδρυτής του, το κόστος συντήρησης έγινε πλέον μη βιώσιμο καθώς αγγίζει τα 25.000$ το μήνα.

Διαβάστε την σχετική ανακοίνωση εδώ.


Για τους Arduino devs που έχουν projects στο Codebender, καλό θα ήταν να αρχίσετε το backup σας. Πιο συγκεκριμένα απ' τις 7/11 δεν θα είναι πλέον διαθέσιμη η υπηρεσία του compilation, με απλά λόγια δε θα μπορείτε πλέον να προγραμματίσετε τα Arduino σας online μέσω του Codebender. Απ' τις 31/11 και μετά θα μπορείτε μόνο να δείτε τα project σας. Απ' το νέο έτος και μετά ίσως να μην είναι πλέον διαθέσιμα.

Τι ακολουθεί? Το Codebender σκοπεύει να επεκταθεί περισσότερο στο B2B κομμάτι, ήδη έχει προωθήσει μια καταπληκτική ιδέα για την online χρήση του ESP8266 wifi module στο kickstarter, διαβάστε περισσότερα εδώ.

Ως Arduino developer, θέλω να ευχαριστήσω όλη την ομάδα του Codebender γι΄αυτή την καταπληκτική και μοναδική εμπειρία που είχαμε πάνω στον προγραμματισμό της αγαπημένης μας Arduino πλακέτας! Σας ευχόμαστε καλή συνέχεια!

Συντάκτης: Βασιλάκης Μιχάλης
www.ardumotive.com Το μεγαλύτερο ελληνικό site για το Arduino
Διάβασε όλο το άρθρο -->>

#74 Φτιάχνοντας ένα ρομποτικό όχημα με το Arduino - Φωνητικές εντολές

Τρίτη, 4 Οκτωβρίου 2016



Στο σημερινό και τελευταίο μέρος της σειράς "Φτιάχνοντας ένα ρομποτικό όχημα με Arduino" θα χρησιμοποιήσουμε μια Android εφαρμογή για να κινήσουμε το όχημα μας μέσω φωνητικών εντολών.

Η Android εφαρμογή που θα χρησιμοποιήσουμε λέγετε "BT Voice Control for Arduino" και μπορείτε να την κατεβάσετε δωρεάν απ΄ εδώ (developer SimpleLabsIN).


Στην ουσία αυτό που κάνει η εφαρμογή είναι να στέλνει τις λέξεις σειριακά στο Arduino. Οι λέξεις ξεκινάνε με '*' και τελειώνουν με '#'. Δεδομένου οτι το Arduino "καταλαβαίνει" μόνο λατινικούς χαρακτήρες, οι λέξεις αυτές πρέπει να είναι στα Αγγλικά. Έτσι αν θέλουμε να κινήσουμε το όχημα μας ευθεία θα πατήσουμε το κουμπί της εφαρμογής και θα πούμε "Forward". Η εφαρμογή θα στείλει στο Arduino το string "*Forward#" ή "*forward#". Οι εντολές που καταλαβαίνει είναι οι παρακάτω:

  • Forward - *Forward#
  • Backward - *Backward#
  • Left - *Left#
  • Right - *Right#
  • Stop - *Stop#

Καμιά φορά η εφαρμογή στέλνει τις λέξεις με το πρώτο γράμμα μικρό. Αυτό μπορούμε να το ελέγξουμε μέσα στην if του κώδικα παρακάτω. Αν λόγω προφοράς δεν στέλνετε σωστά μια εντολή μπορείτε να δοκιμάσετε κάποια άλλη λέξη και να την προσθέσετε στον κώδικα μέσα. Για παράδειγμα για να πάει πίσω μπορούμε να του πούμε Backward ή Reverse, οπότε αυτό που περιμένει το Arduino μπορεί να είναι *Backward# ή *backward# ή *Reverse# ή *reverse#.

Κώδικας


Τώρα μπορείτε να ενώσετε τα κομμάτια κώδικα και να φτιάξετε το δικό σας σούπερ Arduino ρομπότ!

Συντάκτης: Βασιλάκης Μιχάλης
www.ardumotive.com Το μεγαλύτερο ελληνικό site για το Arduino
Διάβασε όλο το άρθρο -->>

#73 Φτιάχνοντας ένα ρομποτικό όχημα με το Arduino - Δύο σε ένα!

Σάββατο, 24 Σεπτεμβρίου 2016




Στα προηγούμενα δύο άρθρα μας προγραμματίσαμε το ρομποτικό όχημα να κινείτε ελεύθερα στο χώρο και να κινείτε μέσω Bluetooth απ' την Android συσκευή μας. Ήρθε η στιγμή να το προγραμματίσουμε ώστε να μπορεί να εκτελέσει και τις δύο λειτουργίες - προγράμματα μαζί.

Το ρομποτικό όχημα θα ξεκινάει στην "χειροκίνητη" λειτουργία μέσω της οποίας μπορεί ο χρήστης να το κινήσει μπροστά - πίσω - αριστερά - δεξιά μέσα απ' την Android εφαρμογή. Με το πάτημα ενός κουμπιού (μέσα στην εφαρμογή) θα μπορέσει το ρομποτικό όχημα να μπει στην "αυτόματη" λειτουργία και να αρχίσει να κινείτε μόνο του στον χώρο.

Πλέον μπορείτε να ρυθμίσετε και την ταχύτητα του.

Κώδικας
Συντάκτης: Βασιλάκης Μιχάλης
www.ardumotive.com Το μεγαλύτερο ελληνικό site για το Arduino
Διάβασε όλο το άρθρο -->>

#72 Φτιάχνοντας ένα ρομποτικό όχημα με το Arduino - Έλεγχος μέσω Bluetooth

Σάββατο, 17 Σεπτεμβρίου 2016



Στο σημερινό άρθρο θα πάρουμε την κατάσταση στα χέρια μας! Θα μπορέσουμε να ελέγξουμε εμείς την πορεία του ρομποτικού οχήματος μέσα από μια Android συσκευή (κινητό ή τάμπλετ) χρησιμοποιώντας την τεχνολογία Bluetooth.

Το Bluetooth είναι γνωστό σε όλους μας εδώ και χρόνια, μερικές πληροφορίες γι αυτό απ' την Βικιπαίδεια:

Το Bluetooth είναι ένα βιομηχανικό πρότυπο για ασύρματα προσωπικά δίκτυα υπολογιστών (Wireless Personal Αrea Νetworks, WPAN). Πρόκειται για μια ασύρματη τηλεπικοινωνιακή τεχνολογία μικρών αποστάσεων, η οποία μπορεί να μεταδώσει σήματα μέσω μικροκυμάτων σε ψηφιακές συσκευές. Επομένως το Bluetooth είναι ένα πρωτόκολλο το οποίο παρέχει προτυποποιημένη, ασύρματη επικοινωνία ανάμεσα σε PDA, κινητά τηλέφωνα, φορητοί υπολογιστές, προσωπικοί υπολογιστές, εκτυπωτές, καθώς και ψηφιακές φωτογραφικές μηχανές ή ψηφιακές κάμερες, μέσω μιας ασφαλούς, φθηνής και παγκοσμίως διαθέσιμης χωρίς ειδική άδεια ραδιοσυχνότητας μικρής εμβέλειας. Από τεχνικής άποψης το Bluetooth είναι ένα πρωτόκολλο ασύρματης δικτύωσης σε φυσικό επίπεδο, υποεπίπεδο MAC και, προαιρετικά, υποεπίπεδο LLC. (διαβάστε περισσότερα)

Στην δικιά μας περίπτωση θα χρησιμοποιήσουμε ένα σειριακό bluetooth module, το HC-06. 


To Blueooth module HC-06:

Κάθε Bluetooth Module έχει ένα όνομα, έναν κωδικό πρόσβασης και έναν ρυθμό μετάδοσης (baud rate), τα οποία μπορούμε εάν θέλουμε να τα αλλάξουμε, θα εξηγήσουμε παρακάτω πως γίνεται αυτό. Τα σήματα του ακροδέκτη που υπάρχουν στο ΒΤ έχουν την ακόλουθη σημασία:


Συνδεσμολογία

Για να γίνει σωστά η επικοινωνία θα πρέπει να ενώσουμε το RXD του Bluetooth με το TXD του Arduino και το TXD του Bluetooth με το RXD του Arduino αντίστοιχα. Προσοχή! Όταν περνάμε πρόγραμμα στο Arduino, θα πρέπει το RXD και TXD του Bluetooth να τα αποσυνδέουμε από το Arduino board.
Βήματα για τον προγραμματισμό του HC-06

Για να προγραμματίσουμε το Bluetooth module θα χρησιμοποιήσουμε το Arduino Uno board χωρίς τον μικρο επεξεργαστή ATMega328, οπότε με προσοχή τον αφαιρούμε πριν ξεκινήσουμε. Εάν δεν θέλετε να τον αποσυνδέσετε, μπορείτε να περάσετε απ' τα παραδείγματα το "Blink Led", με αυτόν τον τρόπο βεβαιωνόμαστε ότι ο μικρο επεξεργαστής δεν χρησιμοποιεί και αυτός την σειριακή θύρα.

  • 1. Συνδέουμε το RXD του Bluetooth με το RXD του Arduino και το TXD του Bluetooth με το TXD του Arduino 
  • 2. Συνδέουμε το Vcc του Blueooth με τα 3,3V ή 5V του Arduino και το GNG του Bluetooth με το GND του Arduino 
  • 3. Συνδέουμε το KEY με μια αντίσταση ~10Κ στο Vcc του Bluetooth (3.3V) - Λειτουργία προγραμματισμού 
  • 4. Συνδέουμε το Arduino Uno με τον υπολογιστή μέσω του USB καλωδίου 
  • 5. Ανοίξτε την επικοινωνία στην παρακάτω σειριακή οθόνη του codebender
  • 6. Επιλέγουμε τον σωστό ρυθμό μετάδοσης (baud rate) που έχει ήδη το bluetooth module. Αυτή την πληροφορία μπορεί να σας την δώσει ο προμηθευτής του Bluetooth Module. Συνηθίζετε η προεπιλεγμένη τιμή να είναι 9600. 
  • 7. Μετά την σύνδεση επιλέξτε "No line ending".
  • 8. Πληκτρολογούμε AT , εάν πάρουμε απάντηση OK τότε είμαστε σε θέση να προγραμματίσουμε το Bluetooth. Εάν όχι τότε ξανά ελέγξτε τον ρυθμό μετάδοσης, βεβαιωθείτε για την συνδεσμολογία στα 3 πρώτα βήματα και πως έχετε βγάλει τον μικρο επεξεργαστή Atmel από το Arduino Uno ή έχετε περάσει σε αυτόν το "Blink Led". 
  • 9. Για αλλαγή ονόματος πληκτρολογούμε AT+NAMEνέο_όνομα. Το Bluetooth απαντάει OKsetname Για αλλαγή του κωδικού πληκτρολογούμε AT+PINνέος_κωδικός. Το Bluetooth απαντάει ΟΚsetpin Για αλλαγή του ρυθμού μετάδοσης AT+BAUDn (n=1,2,3,4,5,6,7,8) . To Blueooth απαντάει OKbaudrate (όπου n=1,2,3,4,5,6,7,8 αντίστοιχα 1200,2400,4800,9600,19200,38400,57600,115200) 
  • 10. Αποσυνδέουμε το KEY από την αντίσταση και από το Vcc και το Bluetooth είναι έτοιμο με νέα χαρακτηριστικά.

Σειριακή οθόνη


Πίσω στο ρομποτικό μας όχημα... 

Συνδεσμολογία:

Προσθέστε στο κύκλωμα σας τις παρακάτω συνδέσεις:
  • Bluetooth Vcc - Arduino 5V
  • Bluetooth GND - Arduino GND
  • Bluetooth RX - Arduino TX
  • Bluetooth TX -Arduino RX


Κώδικας
Κάθε φορά που θα περνάτε πρόγραμμα στο Arduino θα πρέπει να αποσυνδέετε τα καλώδια απ' τα pins RX και TX. Υπάρχει τρόπος για να το αποφύγουμε αυτό μέσω της βιβλιοθήκης SoftwareSerial.h αλλά είναι κάτι που θα το δούμε μελλοντικά.
Το πρόγραμμα παρακάτω θα σας δώσει την δυνατότητα να ελέγξετε το ρομποτικό όχημα μέσα απ' την εφαρμογή που θα δούμε στο επόμενο βήμα. Δεν κάνει χρήση του servo, διακοπτών και ultrasonic sensor. Στο επόμενο άρθρο θα σας δώσω το πρόγραμμα με το οποίο θα μπορεί το ρομπότ σας να εκτελέσει και τις δυο λειτουργίες.


Android εφαρμογή

Η Android εφαρμογή που έχουμε φτιάξει έχει πολλές επιλογές τις οποίες μπορείτε να δείτε στην εικόνα παρακάτω.


Στην παρούσα φάση οι επιλογές που δουλεύουν είναι τα κουμπιά μπροστά, πίσω, αριστερά και δεξιά.

Για να λειτουργήσει η εφαρμογή θα πρέπει να ενεργοποιήσετε τις "Άγνωστες πηγές" (Android 4.0: Ρυθμίσεις - Ασφάλεια - Άγνωστες πηγές) Μέγεθος οθόνης > 3.5 inch

Ελπίζω να το βρήκατε ενδιαφέρον. Δεν έχω προλάβει ακόμα να βγάλω βίντεο, θα το κάνω όμως το συντομότερο δυνατόν.

Συντάκτης: Βασιλάκης Μιχάλης
www.ardumotive.com Το μεγαλύτερο ελληνικό site για το Arduino
Διάβασε όλο το άρθρο -->>

#71 Φτιάχνοντας ένα ρομποτικό όχημα με το Arduino - Αποφυγή εμποδίων

Τρίτη, 6 Σεπτεμβρίου 2016





Στο σημερινό άρθρο θα κάνουμε το ρομπότ να κινείτε μόνο του στον χώρο, αποφεύγοντας τυχών εμπόδια που θα συναντήσει στον δρόμο του.

Για να το πετύχουμε αυτό θα χρησιμοποιήσουμε έναν αισθητήρα υπερήχων και για αποφύγουμε συγκρούσεις με αντικείμενα που βρίσκονται εκτός του πεδίου ανίχνευσης θα χρησιμοποιήσουμε και δυο διακόπτες "επαφής". Επιπλέον για την καλύτερη επιλογή του δρόμου διαφυγής, έχουμε τοποθετήσει στο μπροστινό μέρος του ρομποτικού οχήματος έναν servo κινητήρα ο οποίος θα γυρνάει τον αισθητήρα υπερήχων δεξιά και αριστερά.

Λίγα λόγια για τους υπέρηχους


Όπως φαίνεται και στην παραπάνω εικόνα, οι υπέρηχοι βρίσκονται πάνω απ' τις ακουστικές συχνότητες, έτσι δεν μπορεί να τους ακούσει το ανθρώπινο αυτί. Παρόλο πάντως που εμείς δεν τους ακούμε κάποια ζώα μπορούν και να τους ακούν αλλά και να τους χρησιμοποιούν. Χαρακτηριστικά παραδείγματα που μας το δείχνουν αυτό είναι η κίνηση των νυχτερίδων και η σφυρίχτρα που χρησιμοποιείται για τους σκύλους. Αισθητήρες υπερήχων συναντάμε σε πολλές εφαρμογές στην ιατρική, στην πλοήγηση σκαφών/πλοίων ακόμα και στα αυτοκίνητα μας στα γνωστά park sensors. 

Οι αισθητήρες υπερήχων λειτουργούν με την ίδια αρχή που λειτουργούν τα ραντάρ και τα σόναρ. Εκτιμούν την απόσταση ενός στόχου λαμβάνοντας υπόψη τους την αντανάκλαση ενός ραδιοκύματος ή ενός ηχητικού σήματος πάνω στο στόχο.


Δημιουργούν υψηλής συχνότητας κύματα και χρησιμοποιώντας το επιστρεφόμενο σήμα καθορίζουν την απόσταση ή ακόμα και την ταχύτητα του στόχου. Για να το επιτύχουν αυτό χρησιμοποιούν τον χρόνο που έκανε το σήμα για να καλύψει την απόσταση από τον αισθητήρα στο αντικείμενο και πίσω. 

Στο Arduino η διαδικασία αυτή (αντιστοίχηση χρόνου σε απόσταση) είναι αρκετά απλή διότι υπάρχει συγκεκριμένη βιβλιοθήκη για τον αισθητήρα HC-SR04 που κάνει την "δύσκολη" δουλεία. Εμείς στον κώδικα μας αρκεί να κάνουμε χρήση μόνο μιας εντολής! Η εντολή αυτή θα μας επιστρέψει την απόσταση σε εκατοστά (cm).

Οπτικό πεδίο ~30°

Συνδεσμολογία

Απ΄ εδώ και στο εξής θα χρησιμοποιείτε το breadboard για τα καλώδια τροφοδοσίας 5V και GND αλλά και για μικρά καλώδια που δεν φτάνουν στο Arduino, ως προέκταση.

Αισθητήρας HC-SR04 (Ultrasonic Sensor)

  • Vcc - Arduino pin 5V (θέση breadboard)
  • Trig - Arduino pin A0
  • Echo - Arduino pin A1
  • Gnd - Arduino pin GND (θέση breadboard)

Διακόπτες "επαφής"

Θα πρέπει να έχετε τοποθετήσει έναν διακόπτη σε κάθε πλευρά του ρομποτικού οχήματος, εναν αριστερά και έναν δεξιά. Κάθε διακόπτης έχει δυο επαφές, το ένα καλώδιο θα πρέπει να πάει στην γείωση - gnd και το άλλο σε κάποιο pin του Arduino. Αν έχετε διακόπτη με τρις επαφές τότε θα πρέπει να συνδέσετε τα pins 'com' και 'no'. Δεδομένου οτι έχουμε να κάνουμε με διακόπτη δύο θέσεων, δεν παίζει ρόλο πιο pin θα επιλέξετε για την παρακάτω συνδεσμολογία.

  • Διακόπτης αριστερά - COM - Arduino pin GND (θέση breadboard)
  • Διακόπτης αριστερά - NO - Arduino pin 7

  • Διακόπτης δεξιά - COM - Arduino pin GND (θέση breadboard)
  • Διακόπτης δεξιά - ΝΟ - Arduino pin 8
NC: normaly close, NO: nornaly open, com: common 
Servo motor

Έχει τρία καλώδια, Vcc κόκκινο, GND μαύρο/καφέ και συνήθως πορτοκαλί το σήμα το οποίο το πάει στο Arduino pin 3.

Κώδικας

Το παρακάτω πρόγραμμα χρησιμοποιεί την βιβλιοθήκη ultrasonic.h για την εύρεση την απόστασης σε cm απ' το εμπόδιο που βλέπει ο αισθητήρας υπερήχων. Αν θέλετε να κάνετε χρήση του Arduino IDE αντί του Codebender και σας αρέσει να παιδεύεστε θε πρέπει να την βρείτε και να την εγκαταστήσετε μόνοι σας, μην με ρωτάτε για το Arduino IDE όταν όλα γίνονται αυτόματα με το Codebender.
Διαβάστε τον κώδικα για να τον κατανοήσετε. Πατήστε το πράσινο κουμπί "Run on Arduino" για να προγραμματίσετε το Arduino uno. Μην τοποθετήσετε ακόμα τις μπαταρίες.



Αποσυνδέστε το απ' τον υπολογιστή σας και βάλτε όλες τις μπαταρίες.

Αρχή λειτουργίας

Όταν το ρομποτικό όχημα ανιχνεύσει αντικείμενο σε απόσταση 10cm τότε σταματάει, κοιτάει αριστερά και δεξιά ψάχνοντας για τον καλύτερο τρόπο διαφυγής. Έπειτα στρίβει κατά 90 μοίρες δεξιά ή αριστερά και συνεχίζει ευθεία. Κατά την πορεία του είναι πιθανόν να πέσει πάνω σε αντικείμενα ή τοίχους τους οποίους δεν μπορεί να ανιχνεύσει. Οι διακόπτες επαφής το βοηθούν ώστε να κάνει λίγο πίσω και μια μικρή στροφή αριστερά ή δεξιά για να τα/τους αποφύγει.


Συντάκτης: Βασιλάκης Μιχάλης
www.ardumotive.com Το μεγαλύτερο ελληνικό site για το Arduino
Διάβασε όλο το άρθρο -->>

Το Arduino WiFi Robot μας με κάμερα πορείας σε δράση!

Τρίτη, 30 Αυγούστου 2016


Σε προηγούμενο άρθρο μας σας είχα δείξει σε βίντεο πως να συναρμολογήσετε το Arduino DS Robot kit το οποίο διαθέτει και περιστρεφόμενη κάμερας πορείας. 

Στο παρακάτω βίντεο το κάναμε μια βόλτα μέσω ενός Android τηλεφώνου, το στείλαμε να "εξερευνήσει" μια περιοχή στην οποία δεν είχαμε πρόσβαση και το οδηγήσαμε και σε ανώμαλο έδαφος για να δούμε πως τα πάει. Η εμβέλεια του είναι αρκετά καλή και μπορεί να ενισχυθεί αλλάζοντας τις κεραίες του wifi module με μεγαλύτερες (π.χ. των 9db) και η μπαταρία του.. ακόμα δεν την έχω φορτίσει! 

Η αλήθεια είναι πως αν εξαιρέσεις τις αναταράξεις που έχει η κάμερα κατά την κίνηση του, παίρνει δέκα με τόνο! 

Δείτε το βίντεο:



Πείτε μου πως σας φάνηκε στα σχόλια παρακάτω!

Συντάκτης: Βασιλάκης Μιχάλης
www.ardumotive.com Το μεγαλύτερο ελληνικό site για το Arduino
Διάβασε όλο το άρθρο -->>

#70 Φτιάχνοντας ένα ρομποτικό όχημα με το Arduino - Κίνηση

Σάββατο, 27 Αυγούστου 2016



Στο σημερινό άρθρο θα συνδέσουμε το L298 module με το Arduino uno και θα το προγραμματίσουμε έτσι ώστε να μπορεί να εκτελέσει κίνηση προς όλες τις κατευθύνσεις.

Δεν χρειάζεται προς το παρόν να συνδέσετε την μπαταρία των 9 Volt. Θα χρειαστεί όμως να τοποθετήσετε τις 4 ΑΑ.

Στο προηγούμενο άρθρο συνδέσαμε τα δύο dc μοτέρ με το L298 καθώς και την τροφοδοσία του με τις 4 ΑΑ και το Arduino uno. Εν συντομία τα επαναλαμβάνω και παρακάτω:

  • 12V ή Vbat: Κόκκινο καλώδιο απ' τις 4 ΑΑ
  • GND: Μαύρο καλώδιο απ' τις 4 ΑΑ και ένα επιπλέον προς το GND pin του Arduino uno
  • 5V: Καλώδιο προς το 5V pin του Arduino uno
  • Out1: Κόκκινο καλώδιο - Δεξί μοτέρ
  • Out2: Μαύρο καλώδιο - Δεξί  μοτέρ
  • Out3: Κόκκινο καλώδιο - Αριστερό μοτέρ
  • Out4: Μαύρο καλώδιο - Δεξί μοτέρ

Τώρα αυτό που απομένει για να μπορέσει να ολοκληρωθεί η συνδεσμολογία L298 και Arduino είναι να συνδέσουμε τα σήματα για κάθε μοτέρ. Θα χρησιμοποιήσουμε PWM pins για τον σκοπό αυτό έτσι ώστε να είμαστε σε θέση να ελέγξουμε την ταχύτητα του ρομποτικού οχήματος.

  • In1: Arduino PWM pin 6
  • In2: Arduino PWM pin 5
  • In3: Arduino PWM pin 11
  • In4: Arduino PWM pin 10

Τοποθετήστε τις 4 ΑΑ μπαταρίες και συνδέστε το Arduino uno με τον υπολογιστή σας. 

Για να προγραμματίσουμε το Arduino θα χρησιμοποιήσουμε το Codebender που είναι το online Arduino IDE. Μπείτε εδώ ώστε να φτιάξετε το προφίλ σας και να κατεβάσετε τα drivers καθώς και το browser plugin ακολουθώντας τον οδηγό. Το Codebender online Arduino IDE είναι συμβατό με όλα τα λειτουργικά συστήματα και με τους internet browsers Chrome και Firefox. Φυσικά μπορείτε να χρησιμοποιήσετε και το κλασικό Arduino IDE, αλλά δεν θα δώσω οδηγίες χρήσης γι' αυτό. 
Διαβάστε τον κώδικα για να τον κατανοήσετε. Πατήστε το πράσινο κουμπί "Run on Arduino" για να προγραμματίσετε το Arduino uno. Μόλις ολοκληρωθεί ο προγραμματισμός του, το ρομποτικό όχημα ανα 2 δευτερόλεπτα και για μια μόνο φορά θα κινηθεί ευθεία, πίσω, αριστερά και δεξιά, έπειτα θα σταματήσει. Προσοχή με το usb καλώδιο, καλό θα ήταν κάπως να το κρατάτε για να μην σας "φύγει".



Αν το όχημα δεν κινηθεί σωστά ελέγξτε την συνδεσμολογία σας.


Συντάκτης: Βασιλάκης Μιχάλης
www.ardumotive.com Το μεγαλύτερο ελληνικό site για το Arduino
Διάβασε όλο το άρθρο -->>

#69 Φτιάχνοντας ένα ρομποτικό όχημα με το Arduino - Συναρμολόγηση

Παρασκευή, 19 Αυγούστου 2016



Στο σημερινό άρθρο θα σας δείξω πως να συναρμολογήσετε το ρομποτικό σας όχημα. Στην ουσία θα δούμε που πρέπει να τοποθετήσουμε τα εξαρτήματα μας πάνω στο ρομποτικό σασί.

Για όσους δεν με ξέρουν, είμαι ο Μιχάλης Βασιλάκης, ιδιοκτήτης του Ardumotive.com, στο οποίο μπορείτε να βρείτε tutorials και how to οδηγούς γύρω απ΄το Arduino. Εδώ στο dwrean.net, μέσα απο έναν κύκλο άρθρων, θα φτιάξουμε μαζί ένα σούπερ Arduino ρομποτικό όχημα! Θα προσπαθήσω να το κάνω όσο πιο εύκολο γίνεται ώστε να μπορέσετε να το φτιάξετε όλοι!

Ρομποτικό σασί απ΄ εδώ και στο εξής θα θεωρούμε μόνο το κομμάτι plexiglass.

Τοποθέτηση μοτέρ και πίσω ρόδας

Το πρώτο που πρέπει να κάνουμε είναι να τοποθετήσουμε τα μοτέρ με τις ρόδες τους, καθώς και την πίσω ρόδα πάνω στο ρομποτικό σασί. Χρησιμοποιείστε ένα κατσαβίδι για να βιδώσετε τις βίδες που περιλαμβάνονται μαζί με το σασί. Δείτε τις παρακάτω φωτογραφίες απ' το δικό μου όχημα (το οποίο είναι ήδη συναρμολογημένο).

(εικόνα 1)

Στην παραπάνω εικόνα φαίνεται το πως είναι τοποθετημένο το μοτέρ. Παρατηρήστε πως οι ακροδέκτες του μοτέρ είναι απ' την έξω πλευρά! Αυτό ισχύει και για τα δυο μοτέρ. Δείτε επίσης, σε σχέση με την κάτω εικόνα - εσωτερική πλευρά, πως είναι τοποθετημένες οι βίδες πάνω στα πλαστικά άκρα που "κρατάνε" τα μοτέρ σταθερά στο ρομποτικό σασί. Αφού βιδώστε τα μοτέρ μπορείτε να "κουμπώσετε" τις δυο ρόδες πάνω σε αυτά.

(εικόνα 2)

Χρησιμοποιείστε τους 4 αποστάτες για να το φέρετε στο σωστό ύψος. (παρακάτω εικόνα)

(εικόνα 3)

Επόμενο βήμα είναι να κολλήσουμε καλώδια πάνω στους ακροδέκτες των μοτέρ. Πριν συνεχίσετε βεβαιωθείτε πως οι ακροδέκτες (και των δυο μοτέρ) κοιτάνε προς την εξωτερική πλευρά του σασί! ("προς τα έξω"). Εδώ θα πρέπει να κάνετε δύο κολλήσεις για κάθε μοτέρ. Όπως φαίνεται στην πρώτη εικόνα πιο πάνω, στον πάνω ακροδέκτη κολλήστε ένα κόκκινο καλώδιο και στον κάτω ένα μαύρο. Φροντίστε τα καλώδια να είναι αρκετά μεγάλα ώστε να μπορέσουμε να τα περάσουμε αργότερα στο πάνω μέρος του ρομποτικού σασί. Επαναλάβετε την διαδικασία και για το άλλο μοτέρ (το κόκκινο καλώδιο πάνω!).

Ήρθε η ώρα να ανοίξουμε μερικές τρύπες! Χρησιμοποιείστε ένα δραπανοκατσάβιδο με το κατάλληλο τρυπάνι ώστε να μπορέσουν να περάσουν οι αποστάτες μέσα απ' αυτές (στο ρομποτικό σασί). Που να ανοίξω τις τρύπες; Ο χώρος είναι περιορισμένος, προχωρήστε με προσοχή. 

Τοποθέτηση L298

Αρχικά, στο πίσω μέρος τοποθετήστε πρόχειρα το L298, και με ένα μαρκαδόρο αφήστε κάποια σημαδάκια μέσα απ' τις τρύπες του ώστε να ανοίξετε τις τρύπες στην σωστή θέση.  Ανοίξτε τις τρύπες και περάστε τους αποστάτες - στο κάτω μέρος παξιμάδια, στο πάνω βίδες. Τοποθετήστε το L298 πάνω στους αποστάτες και βιδώστε καλά. 

(εικόνα 4)

Η παραπάνω εικόνα δείχνει πως πρέπει να έχετε τοποθετήσει το L298 πάνω στο ρομποτικό σασί. Αριστερά και δεξιά θα δείτε πως έχει τις θέσης - κλέμες - που πρέπει να μπουν τα καλώδια απ' τα μοτέρ. Στην θέση OUT1 βάζετε το κόκκινο καλώδιο απ' το δεξί μοτέρ (όπως το κοιτάμε απο πίσω) ενώ στην θέση OUT2 το μαύρο καλώδιο. Στην θέση OUT3 το κόκκινο καλώδιο του άλλου μοτέρ (αριστερού) και στην θέση OUT4 το μαύρο καλώδιο. Θα ασχοληθούμε στην συνέχεια με τα υπόλοιπα καλώδια που πρέπει να συνδέσουμε στο L298 για να λειτουργήσει.

Τοποθέτηση Arduino και breadboard

Ακριβώς δίπλα στο L298 πρέπει να τοποθετηθεί το Arduino uno. Ακολουθήστε την ίδια διαδικασία όπως παραπάνω για να ανοίξετε τις 4 τρύπες για τους αποστάτες. Βιδώστε το arduino πάνω σε αυτούς. Λίγο πιο δίπλα κολλήστε το breadboard πάνω στο ρομποτικό σασί (διαθέτει ταινία διπλής όψεως στο κάτω μέρος του). Δείτε την εικόνα παρακάτω απ' το δικό μου όχημα - αγνοείστε τα καλώδια, θα σας σώσω οδηγίες στην συνέχεια.

(εικόνα 5)

Τοποθέτηση διακοπτών επαφής

Τοποθετήστε τους διακόπτες όπως στην εικόνα παρακάτω. Θα πρέπει το σίδερο να προεξέχει αριστερά και δεξιά. Γιατί να βάλω διακόπτες επαφής; Ο λόγος είναι αρκετά απλός. Ο αισθητήρας υπερήχων που θα χρησιμοποιήσουμε για την αποφυγή εμποδίων δεν έχει πολύ μεγάλη οπτική γωνία και έτσι μερικές φορές το όχημα μας κτυπάει πάνω σε τοίχους ή αντικείμενα που βρίσκονται κοντά στις ρόδες, δηλαδή στα άκρα του. Αυτό μπορούμε να το αντιμετωπίσουμε με αυτούς τους διακόπτες.

(εικόνα 6)

Τοποθέτηση servo και HC-SR04

Στο σημείο αυτό θα πρέπει να συναρμολογήσετε την βάση με τον servo κινητήρα και τον αισθητήρα υπερήχων HC-SR04. Δεν μπορώ να σας δώσω περισσότερες λεπτομέρειες εδώ, αν έχετε αγοράσει το ίδιο εξάρτημα με αυτό που σας είπα στο πρώτο άρθρο, τότε η παρακάτω εικόνα μιλάει από μόνη της.

(εικόνα 7)

Τοποθέτηση βάσεις μπαταριών

Στο κάτω μέρος του και με την χρήση θερμοσιλικόνης κολλήστε-στερεώστε τις δυο βάσεις μπαταριών. Πίσω η βάση για τις 4 ΑΑ και λίγο πιο μπροστά η βάση για την 9V. 

Η 9V μπαταρία θα τροφοδοτεί το Arduino μας. Περάστε το καλώδιο απο μια τρύπα στο πάνω μέρος του σασί, κοντά στο Arduino. Κάντε μια τομή στο κόκκινο καλώδιο και συνδέστε εκεί τον διακόπτη on/off (αν έχετε πάρει το ίδιο σασί με το δικό μου είχε μαζί έναν τέτοιο διακόπτη, καθώς και την βάση για τις 4 ΑΑ μπαταρίες). Στο τέλος του καλωδίου συνδέστε το DC jack και τέλος συνδέστε το με το Arduino. (μην βάλετε ακόμα την μπαταρία επάνω!) - Δείτε την εικόνα 5.

(εικόνα 8 - στο tip το κόκκινο, στο sleeve το μαύρο)

Το καλώδιο απ' την βάση των 4xAA (4x1.5V=6V) θα πάει στο L298. To L298 για την τροφοδοσία του έχει 3 κλέμες (συνήθως Vbat ή 12V, GND, 5V). Το κόκκινο καλώδιο θα πάει στο Vbat και το μαύρο στο GND. Βρείτε ένα άλλο ζεύγος κόκκινου-μαύρου καλωδίου και συνδέστε το στο GND και 5V (δε χρειάζεται φαντάζομαι να αναφέρω ότι στο 5V θα βάλετε το κόκκινο, αλλά θα το κάνω). Την άλλη άκρη συνδέστε την με το Arduino uno στα pins 5V και GND αντίστοιχα (που αλλού;)

(εικόνα 9)

Τέλος συναρμολόγησης

Έχοντας ολοκληρώσει όλα τα παραπάνω, το ρομποτικό σας όχημα πρέπει να δείχνει κάπως έτσι...

(εικόνα 10)



Αφήστε μας και κανα comment πιο κάτω να ξέρουμε ότι κάποιος μας διαβάζει :P

Συντάκτης: Βασιλάκης Μιχάλης
www.ardumotive.com Το μεγαλύτερο ελληνικό site για το Arduino
Διάβασε όλο το άρθρο -->>

#68 Φτιάχνοντας ένα ρομποτικό όχημα με το Arduino - Εισαγωγή

Τρίτη, 16 Αυγούστου 2016


Arduino ρομπότ υπάρχουν πολλά, όμως αυτό που θα φτιάξουμε μαζί εδώ στο dwrean.net θα είναι ξεχωριστό! Γιατί; Γιατί θα το έχετε φτιάξει εσείς!

Το να φτιάξει κάποιος ένα ρομποτικό όχημα με την χρήση του Arduino είναι ίσως η πιο διασκεδαστική κατασκευή που μπορεί να κάνει κάποιος με αυτό. Το να βλέπεις κάτι που έφτιαξες εσύ να κινείται μόνο του στον χώρο, αποφεύγοντας τυχών εμπόδια, είναι κάτι που σε 'γεμίζει'. Είναι όμως και κάτι ξεπερασμένο θα έλεγα. Γι΄αυτό το δικό μας ρομπότ θα μπορεί να κάνει και μερικά πράγματα παραπάνω.

Στόχος μας λοιπόν είναι να κατασκευάσουμε βήμα βήμα ένα ρομποτικό όχημα το οποίο να μπορεί να:

  • κινείται μόνο του στον χώρο
  • ελέγχεται μέσω Android εφαρμογής
  • κινείται μέσω φωνητικών εντολών

Στο σημερινό άρθρο θα δούμε τα υλικά και εργαλεία που θα χρειαστούμε γι΄ αυτή την κατασκευή. Έτσι θα έχετε χρόνο να τα προμηθευτείτε και να ξεκινήσουμε μαζί την υλοποίηση του. 

Αρκετοί από εσάς έχετε ως εργαστηριακή εργασία ή ακόμα και πτυχιακή την κατασκευή ενός τέτοιου ρομποτικού οχήματος. Αυτά τα άρθρα θα σας βοηθήσουν ώστε να το φτιάξετε εύκολα και να καταλάβετε και πέντε βασικά πράγματα γύρω απ' το κομμάτι των μικρο-ελεγκτών, ηλεκτρονικών και του κώδικα-προγραμματισμού.

Τα υλικά που θα χρειαστούμε:


  • Arduino uno και το καλώδιο usb του
  • Μικρό breadboard και καλώδια (male to male breadboard)
  • Bluetooth module HC-06
  • Ρομποτικό σασί με 2 ρόδες - μοτέρ (όπως αυτό)
  • Αισθητήρας υπερήχων HC-SR04
  • Μικρό servo-μοτέρ (180o) μαζί με την βάση για τον HC-SR04 (όπως αυτό)
  • L298N Motor Driver Module (όπως αυτό)
  • Θήκη-βάση για μπαταρίες AAx4 και για 9V
  • Βύσμα για το DC Power Jack του Arduino uno
  • 2 διακόπτες "επαφής" (όπως αυτό)
  • Buzzer
  • Αποστάτες - βίδες - παξιμάδια για να τοποθετήσουμε τα εξαρτήματα πάνω στο ρομποτικό σασί (όπως αυτά)

Σε κάποια έχω δώσει link για να πάρετε ότι έχω πάρει και εγώ. Επίσης κάποια απο αυτά τα βλέπετε και στην παραπάνω εικόνα. Για να μην υπάρξουν προβλήματα και μπερδέματα σας παρακαλώ να μην παρεκκλίνετε απ' την παραπάνω λίστα και... μην με ρωτάτε για άλλο hardware.

Εργαλεία:

  • Δραπανοκατσάβιδο για να ανοίξετε επιπλέον τρύπες στο ρομποτικό σασί 
  • Κατσαβίδι
  • Κολλητήρι και καλάι για να κολλήσετε τα καλώδια στα μοτέρ 
  • Πιστόλι θερμοσιλικόνης και ράβδους θερμοσιλικόνης

Για τυχών απορίες αφήστε το σχόλιο σας παρακάτω! Καλή αρχή και... τον νου σας στο επόμενο άρθρο!



Συντάκτης: Βασιλάκης Μιχάλης
www.ardumotive.com Το μεγαλύτερο ελληνικό site για το Arduino
Διάβασε όλο το άρθρο -->>

#67 Μαγνητικός διακόπτης επαφής και Arduino

Κυριακή, 7 Αυγούστου 2016


Στο σημερινό μας άρθρο θα δούμε πως μπορούμε να διαβάσουμε την κατάσταση ενός μαγνητικού διακόπτη επαφής. Τέτοιου είδους διακόπτες - αισθητήρια συναντάμε συνήθως σε συναγερμούς σπιτιών - στις πόρτες ή και στα παράθυρα.  Λειτουργεί σαν έναν διακόπτη. Όσο τα δυο μέρη του βρίσκονται κοντά (απόσταση < 1 cm) ο διακόπτης είναι κλειστός. Μόλις απομακρυνθεί το ένα απ' το άλλο ο διακόπτης ανοίγει και έτσι "καταλαβαίνει" το σύστημα οτι υπήρξε παραβίαση.

Σκοπός του σημερινού μαθήματος είναι μέσω του Arduino να προσομοιώσουμε αυτή την λειτουργία. Μόλις ο διακόπτης ανοίγει θα ακούγετε ένας ήχος απ' ένα buzzer.

Δείτε το βίντεο του αποτελέσματος:



Τα υλικά που θα χρειαστούμε:


  • Arduino uno 
  • Magnetic Contact Switch - Door Sensor 
  • Buzzer 
  • Breadboard και μερικά καλώδια

Το κύκλωμα μας σε breadboard:


Ο κώδικας





Αυτό ηταν! Εύκολο, δύσκολο? Πείτε μου πως σας φάνηκε στα σχόλια παρακάτω!

Συντάκτης: Βασιλάκης Μιχάλης
www.ardumotive.com Το μεγαλύτερο ελληνικό site για το Arduino
Διάβασε όλο το άρθρο -->>

 
 
 

κέρνα έναν καφέ...

Υπάρχουν online επισκέπτες στο site μας

Προτείνουμε...