Go Down

Topic: arduino e python (Read 3769 times) previous topic - next topic

nathanvi

Ciao a tutti,
su chi fosse interessato a comprendere come fare a far interagire il PC con Arduino senza usare l'IDE ho scritto un veloce articoletto su come usare python in questo ambito.
Stringato ma essenziale:
http://zuccala.blogspot.com/2010/03/arduino-e-seriale-python.html
My blog:
http://zuccala.blogspot.com

Federico

Utilizzo pyserial con arduino con successo da un annetto per il comando remoto di un grupo di rele'. Libreria consigliata!
Federico - Sideralis
Arduino &C: http://www.sideralis.org
Foto: http://blackman.amicofigo.com

nathanvi

Grazie per la conferma.
In effetti mi stavo proprio chiedendo se fosse stabile e non avesse bachi pesanti :-)
Anche io come prossimo programma ho intenzione di affrontare il relè.
Tu federico per cosa li utilizzi?
A quale Vout?
My blog:
http://zuccala.blogspot.com

.::Luka::.

Quote

Ne consegue che è molto semplice fa interagire il PC con Arduino e questo rende questa tecnologia ancora più affascinante ai miei occhi...
Che ne pensate?


Molto,molto affasciante.
Devo fare ancora molta pratica con Arduino ma in futuro voglio creare applicazioni con python(wx) ed arduino per comunicare con l'ambiente esterno.
Ecco quello che ho acquistato di recente per fare pratica, ditemi un po' che ne pensate:


1 x        LED 3mm - ROSSO/VERDE - 5pz        1,00EUR
1 x       LED 3mm - ROSSO - 10pz       1,00EUR
1 x       Micro Joystick Slide       4,80EUR
2 x       LM35DZ Misuratore di temperatura di precisione       3,00EUR
1 x       Microswitch a levetta       1,50EUR
1 x       Catalogo Prodotti 1/2010       0,00EUR
1 x       Cavi Jumper M/M       5,30EUR
1 x       Potenziometro ALPS 100KOhm - 9mm       1,80EUR
1 x       Chip Convertitore Luce/Frequenza       7,70EUR


nathanvi

ottimo.
Ci metterei anche uno o due servo motori per completare il quadro anche se mediamente costano di più degli elementi che hai elencato :-(
My blog:
http://zuccala.blogspot.com

.::Luka::.



hai ragione ma il problema è che non sapendo se potevo collegare direttamente un servo alla breadboard ho pensato, meglio far pratica con cose elementari e collegare la marea di teoria che ho fatto con la pratica prima di prendere un servo.
Sbaglio?

nathanvi

No no, è corretto andare per gradi.
Preferisco chi fa così che non gettarsi nel progetto della vita.
Ad ogni modo il servo motore puoi collegarlo direttamente alla breadboard. Per questo non ti ho detto un motore passo passo o DC motor :-)
My blog:
http://zuccala.blogspot.com

Federico

Utilizzo una coppia di rele per accendere dei remote di amplificatori, praticamente il segnale che indica all'amplificatore di accendersi. Ora come ora utilizzo rele' da 12v collegati brutalmente ad arduino e funzionano anche se ogni tanto ho avuto dei problemi. Questa settimana ho creato una scheda copiandola praticamente dai "brick" di seeedstudio e ho preparato rele a 5v con transistor, lo stato dell'arte :) che andro' a sostituire a quelli attuali (sono 2)

Il problema maggiore che ho avuto e' sulla questione del reset di arduino sulla seriale, quando la chiudi il rele' si spegne. Ho visto ultimamente che forse c'e' la possibilita' di mettere una resistenza sul reset pin di arduino per evitare questa cosa ma non ho mai provato.

Attualmente il mio sistema e' costituito da un server web in python di poche righe che accetta chiamate su un paio di pagine, accendi e spegni. Il server web sale con l'accensione del computer e apre la seriale, poi l'utente "clicca l'icona" e comunica ad arduino cosa fare.

Fede
Federico - Sideralis
Arduino &C: http://www.sideralis.org
Foto: http://blackman.amicofigo.com

t30

anche io ho fatto qualcosa con py e arduino...
ma non con pyserial...

Nella parte finale dell'articolo c'è una parte su un programmino in py per comandare uno stepper (richiede wx)

http://blog.lampugnani.org/arduino/motori-passo-passo-ed-elettronica/

.::Luka::.

#9
Apr 06, 2010, 11:02 pm Last Edit: Apr 06, 2010, 11:03 pm by ArdLuka Reason: 1
Amici!!
è arrivato il materiale, cavolo dalla teoria alla pratica sono proprio 2 mondi diversi.
Vi posto l'immagine del collegamento del sensore per la temperatura ma del quale attraverso python e pyserial non riesco a leggere niente, la foto non ha il collegamento usb inserito ma vi giuro che quando smanetto la collego   :D



import serial
s=serial.Serial(1)
while(1):
line=s.readline()
print line

non mi da niente, errore?

Federico

E qual'e' il codice su arduino?
Federico - Sideralis
Arduino &C: http://www.sideralis.org
Foto: http://blackman.amicofigo.com

.::Luka::.

quello riportato qui:
http://pscmpf.blogspot.com/2008/12/arduino-lm35-sensor.html

t30

Io uso linux,
ho modificato il tuo codice da:

Code: [Select]
import serial
s=serial.Serial(1)
while(1):
line=s.readline()
print line


a:
Code: [Select]
import serial
s=serial.Serial("/dev/ttyUSB0")
while(1):
line=s.readline()
print line


e funziona.

Tieni presente che con "s=serial.Serial(1)", cerchi i dati sulla seconda porta seriale.
quindi, su linux /dev/ttyS1; e da quel che mi risulta, su windows, com1 (non sono sicurissimo di windows perchè non ho modo di provare)

.::Luka::.

sfortunatamente uso windows :(

pelletta

#14
Apr 07, 2010, 02:36 am Last Edit: Apr 07, 2010, 02:39 am by Pelletta Reason: 1
Coltiva linux che windows si pianta da solo :)
So che non è facile, è un mondo totalmente diverso ma credo valga la pena di impararlo. Ci sto provando ma non è facile però ci sono molte guide e ottimi forum in giro, almeno una prova va fatta. Alcune cose sono davvero intuitive e facili da fare, altre un pò meno però giusto per farti un esempio stupido prova a farti restituire via software le temperature rilevate dai sensori della motherboard su windows... Su linux basta una riga di codice da terminale, su sistemi windows per fare la stessa cosa non so verso quale santo occorre rivolgersi :)
Scusa l'off topic.

Go Up