Thursday, March 8, 2012

Whack a banker, arcade παιχνίδι με αφορμή την κρίση


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

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

Tuesday, March 6, 2012

Nanoseconds, μια οπτικοποίηση του χρόνου

Το παρακάτω video το βρήκα χαζεύοντας στο internet. Πρόκειται για ένα πολύ έξυπνο παράδειγμα που αντιστοιχεί τον χρόνο σε απόσταση που μπορεί να διανύσει ένα ηλεκτρόνιο στον αντίστοιχο χρόνο. Μου έκανε αρκετή εντύπωση και είπα να το ανεβάσω. Μιας και με το arduino χρησιμοποιούμε υποκλίμακες του δευτερολέπτου, θα βοηθούσε να στο να καταλάβει κανείς πόσο μικρός είναι ο χρόνος της τάξεως των νανοδευτερολέπτων και μικροδευτερολέπτων.

EKFKVDBF2J55

Monday, March 5, 2012

Online μαθήματα στα ηλεκτρικά κυκλώματα από το MIT

circuit symbols
Από σήμερα, 5/3 ξεκινάει στο MIT ένα πρόγραμμα online εκμάθησης ηλεκτρικών κυκλωμάτων. Το πρόγραμμα αυτό είναι δωρεάν και δεν χρειάζεται κάτι παραπάνω από τη συμπλήρωση μιας απλής φόρμας για να μπορεί κάποιος να το παρακολουθήσει.

Arduino, προγραμματίζοντας με λίγη assembly

Γενικά έχουμε πει ότι το arduino προγραμματίζεται σε C/C++. Παρ' όλα αυτά μπορούμε να χρησιμοποιήσουμε και στοιχεία assembly όπως θα κάναμε εάν θέλαμε να προγραμματίσουμε έναν avr μικροελεγκτή χωρίς τον bootloader του arduino και δίχως τις κατάλληλες βιβλιοθήκες avr-lib της C. Ας δούμε λοιπόν μερικά παραδείγματα στα οποία θα χρησιμοποιήσουμε λίγη assembly στον ορισμό και στην χρήση των ακροδεκτών του arduino.

Παράδειγμα 1:

Sunday, March 4, 2012

Breadboard, οδηγός για αρχάριους


Αφορμή για αυτό το ποστ είναι το γεγονός ότι αρκετός κόσμος που αρχίζει να ασχολείται με κυκλώματα  ψάχνει για το πως θα κάνει συνδέσεις στο breadboard ή αλλιώς ράστερ. Δεν είναι καμιά επιστήμη προφανώς, απλά όπως μου τα είπαν κάποια στιγμή κι εμένα στην αρχή κάπως έτσι θα παραθέσω δυό τρία πράγματα για να γίνει το ξεκίνημα ευκολότερο.


Sunday, February 26, 2012

Stepper Motor testing with Arduino


Με αυτό το μικρό post ήθελα να σημειώσω ότι είναι πολύ εύκολο να δοκιμάσουμε εάν ένας βηματικός κινητήρας (stepper motor) περιστρέφεται χωρίς πρόβλημα και έχουν γίνει οι συνδέσεις σωστά. Δηλαδή έχουμε βρει τους αντίστοιχους ακροδέκτες για κάθε πηνίο και δεν έχει κάποιο πρόβλημα.


Sunday, December 11, 2011

Arduino Mega 1280/2560 help & tips


Το Arduino mega έχει κάποιες διαφορές με τα προηγούμενα και είναι πρόβλημα γιατί τα περισσότερα tutorial αναφέρονται στο Uno ή στο Duemilanove. Επίσης υπάρχει και ένα πρόβλημα με τα shields που απευθύνονται για αυτές τις υλοποιήσεις.

Pinout:
Αρχικά, τα πινς του mega είναι διαφορετικά από των υπόλοιπων. Καλό είναι να έχετε κατά νου την αντιστοιχία που υπάρχει. Βασικό είναι το γεγονός ότι τα πινς SPI που χρειάζονται για προγραμματισμό και για shields όπως το Ethernet δεν είναι τα ίδια. Ενώ λοιπόν το shield κουμπώνει πάνω στο mega στις μπροστά υποδοχές, δεν δουλεύει.
Από εδώ με την αντιστοιχία των πινς έχουμε ότι:
  • MISO - 50 (και όχι το αντίστοιχο 12 για uno,duemilanove)
  • MOSI - 51 (αντί για 11)
  • SCK - 52 (αντί για 13)
  • SS - 53 (αντί για 10)
Άρα εάν στον κώδικά μας δεν περιέχεται η βιβλιοθήκη ' pins_arduino.h ' που φροντίζει να κάνει τις αλλαγές για το mega, πρέπει να βρούμε στο κώδικα τις αντίστοιχες καταχωρήσεις και να τις αλλάξουμε. Είναι της μορφής ' #define MISO 12 ' και να κάνουμε τις αντίστοιχες αλλαγές. Μπορεί να χρειαστεί πέρα από τον αυτό καθαυτό κώδικα να αλλάξουμε και βιβλιοθήκες που χρησιμοποιεί το πρόγραμμά μας και δεν περιέχουν το ' #include "pins_arduino.h" '.




Autoreset:
Για να αποτρέψουμε το autoreset στο mega πρέπει να συνδέσουμε έναν πυκνωτή 100nF και πάνω μεταξύ RESET και +5V.

Χρήση shield για Uno/Duemilanove:
Τα shileds αυτά είναι πιο μικρά αλλά μπαίνουν μια χαρά στις μπροστινές υποδοχές. Εάν δεν δουλέυουν τότε το πιο πιθανό είναι ότι χρησιμοποιούν τα SPI pins και πρέπει να τα συνδέσουμε με τα αντίστοιχα του mega. Για να το κανουμε αυτό, λυγίζουμε προς τα έξω τα 4 αντίστοιχα πινς του shield (10-13) και συνδέουμε με καλώδια τα αντίστοιχα όπως έγραψα πιο πάνω.