DIY: Εμφανίστε δεδομένα από Arduino σε μια οθόνη Nokia 5110
Δεδομένα όπως θερμοκρασίες αισθητήρων και διάφορα ακόμα που μπορούμε να μετρήσουμε με ένα Arduino. Δεδομένα όπως θερμοκρασίες αισθητήρων και διάφορα ακόμα που μπορούμε να μετρήσουμε με ένα Arduino.
Εάν ποτέ χρειάστηκε να δουλέψετε με δεδομένα/readings από ένα Arduino τότε το πρώτο πράγμα που κάνατε, είναι να προβάλλετε με κάποιο τρόπο κάπου τα αποτελέσματα. Συνήθως μπορούμε να τα προβάλουμε στην οθόνη του υπολογιστή, όμως ένα σωστό DIY project με επιστημονικό πρόσωπο θα πρέπει να εξοπλίζεται με κάτι εξίσου μοναδικό, χωρίς να χρειάζεται να απασχολήσει ούτε το 1% του πολύτιμου (και συνήθως υψηλών επιδόσεων) υπολογιστή μας. Το Nokia 5110 ήταν ένα αρκετά εντυπωσιακό κινητό τηλέφωνο στα νιάτα του, όμως πλέον με τα Android και τα iOS smartphones έχει γίνει μουσειακό κομμάτι! Την οθόνη του συγκεκριμένου κινητού τη βλέπουμε συχνά πυκνά σε πολλά DIY και είναι σχετικά εύκολη να παίξει κάποιος χάρη στις ελεύθερες βιβλιοθήκες που υπάρχουν για το Arduino.
Βήμα 1. Σ' αυτό το DIY θα δούμε πως μπορούμε να εμφανίσουμε δεδομένα από αισθητήρες στην οθόνη του Nokia 5110 με τη βοήθεια του Arduino IDE και φυσικά ενός Arduino (Uno). Επίσης θέλουμε jumper καλώδια (male to female), καθώς και δύο σχετικές βιβλιοθήκες. Η οθόνη του 5110 κοστίζει περίπου $2 και μπορούμε να την προμηθευτούμε από το eBay.
[LEFT]Βήμα 2.Οι βιβλιοθήκες που θα πρέπει να κατεβάσουμε είναι η GFX-Library και η PCD8544-Nokia-LCD-library για την οθόνη. Αφού κατεβάσουμε τα zip τους, μεταφέρουμε τον φάκελο, στον φάκελο των libraries που βρίσκεται συνήθως στο C:/Program files/Arduino/libraries. Φροντίστε οι φάκελοι να έχουν τα παρακάτω ονόματα, Adafruit_GFX και Adafruit_PCD8544.
Βήμα 3. Ο κώδικας που θα ανεβάσουμε στο IDE φαίνεται παρακάτω όμως μη τον τρέξετε ακόμα καθώς θα περάσουμε πρώτα τα καλώδια για να συνδυάσουμε την οθόνη on the fly.
Βήμα 4. Τα 5 πρώτα pins συνδέονται στο Arduino όπως φαίνεται στις φωτογραφίες. Τα υπόλοιπα τρία που μένουν τα συνδέουμε στα 3.3V, 5V και GND pins του Arduino. Στην οθόνη, το GND φαίνεται εμφανώς, ενώ για τα άλλα δύο θα πρέπει να πειραματιστείτε για να βρείτε το σωστό. Για ασφάλεια, θα μπορούσατε να παρεμβάλλεται και μια αντίσταση 100-200Ohm μεταξύ των Pins της οθόνης κι των καλωδίων για μεγαλύτερη προστασία. Τώρα, είμαστε έτοιμοι να τρέξουμε τον κώδικα που γράψαμε στο IDE. Πλέον, εκτός από φιδάκι, θα μπορούμε να δούμε νούμερα από διάφορες μετρήσεις να εμφανίζονται ζωντανά στην οθόνη μας! [/LEFT]
Εάν ποτέ χρειάστηκε να δουλέψετε με δεδομένα/readings από ένα Arduino τότε το πρώτο πράγμα που κάνατε, είναι να προβάλλετε με κάποιο τρόπο κάπου τα αποτελέσματα. Συνήθως μπορούμε να τα προβάλουμε στην οθόνη του υπολογιστή, όμως ένα σωστό DIY project με επιστημονικό πρόσωπο θα πρέπει να εξοπλίζεται με κάτι εξίσου μοναδικό, χωρίς να χρειάζεται να απασχολήσει ούτε το 1% του πολύτιμου (και συνήθως υψηλών επιδόσεων) υπολογιστή μας. Το Nokia 5110 ήταν ένα αρκετά εντυπωσιακό κινητό τηλέφωνο στα νιάτα του, όμως πλέον με τα Android και τα iOS smartphones έχει γίνει μουσειακό κομμάτι! Την οθόνη του συγκεκριμένου κινητού τη βλέπουμε συχνά πυκνά σε πολλά DIY και είναι σχετικά εύκολη να παίξει κάποιος χάρη στις ελεύθερες βιβλιοθήκες που υπάρχουν για το Arduino.
Βήμα 1. Σ' αυτό το DIY θα δούμε πως μπορούμε να εμφανίσουμε δεδομένα από αισθητήρες στην οθόνη του Nokia 5110 με τη βοήθεια του Arduino IDE και φυσικά ενός Arduino (Uno). Επίσης θέλουμε jumper καλώδια (male to female), καθώς και δύο σχετικές βιβλιοθήκες. Η οθόνη του 5110 κοστίζει περίπου $2 και μπορούμε να την προμηθευτούμε από το eBay.
[LEFT]Βήμα 2.
Βήμα 3. Ο κώδικας που θα ανεβάσουμε στο IDE φαίνεται παρακάτω όμως μη τον τρέξετε ακόμα καθώς θα περάσουμε πρώτα τα καλώδια για να συνδυάσουμε την οθόνη on the fly.
#include < math.h >//math and SPI should be already in your libraries folder by default, donʼt worry about these
#include < SPI.h>
#include < Adafruit_GFX.h
//we downloaded this just now
#include < Adafruit_PCD8544.h >
Adafruit_PCD8544 display = Adafruit_PCD8544(7, 6, 5, 4, 3); //digital pins used to connect to LCD
#define XPOS 0
#define YPOS 1
float sensorPin = A0; //your sensor pin, you can change this if you want
void setup()
{
Serial.begin(9600);
display.begin();
}
void loop()
{
float sensorValue = analogRead(SensorPin); //you can change “sensorValue” in all of the code to anything you want
Serial.print("The value of sensor A is: "); //will display this text on the serial monitor
Serial.println(sensorValue); //donʼt forget the ln so the next run writes into the next row
display.clearDisplay(); //clears display each time the loop starts over
display.setCursor(0,0);
display.print("The value of sensor A is: "); //this will be written on the LCD
display.println(sensorValue);
display.display();
delay(1000);
}
Βήμα 4. Τα 5 πρώτα pins συνδέονται στο Arduino όπως φαίνεται στις φωτογραφίες. Τα υπόλοιπα τρία που μένουν τα συνδέουμε στα 3.3V, 5V και GND pins του Arduino. Στην οθόνη, το GND φαίνεται εμφανώς, ενώ για τα άλλα δύο θα πρέπει να πειραματιστείτε για να βρείτε το σωστό. Για ασφάλεια, θα μπορούσατε να παρεμβάλλεται και μια αντίσταση 100-200Ohm μεταξύ των Pins της οθόνης κι των καλωδίων για μεγαλύτερη προστασία. Τώρα, είμαστε έτοιμοι να τρέξουμε τον κώδικα που γράψαμε στο IDE. Πλέον, εκτός από φιδάκι, θα μπορούμε να δούμε νούμερα από διάφορες μετρήσεις να εμφανίζονται ζωντανά στην οθόνη μας! [/LEFT]