Forum
>>
Principianti
>>
utilizzo python con arduinoYun
Pagina: 1
Esegui il login per scrivere una risposta.
Pagina: 1
Scritto da luigi67 |
2016-12-23 12:23:07 - utilizzo python con arduinoYun
|
Salve a tutti
Mi sono appena iscritto, mi chiamo Luigi son un programmatore "tradizionale", finora ho usato linguaggi come ANSI C, Visual pascal etc(Lazarus, Delphi). mi sono approcciato a python per utilizzarlo su un Arduino Yun. Ho dato un'occhiata veloce a questo sito che mi sembra veramente ben fatto e poi la community ma fa sentire più al sicuro per questa avventura. Bando alle chiacchiere e vi dico subito cosa mi potrebbe aiutare, sotto c'è uno "schizzo" di codice python che mi serve su piattaforma arduino, chiaramente sarà più complesso. In pratica questo codice dovrebbe creare un'interazione fra arduino lato MCU e linino lato MPU e che inoltre si dovrebbe occupare di inviare una mail qualora i sensori segnalino per esempio presenza di acqua(allagamento), fiamma (incendio) o gas. il problema che ho riscontrato è che mi sembra e parlo solo dello schizzo, molto lento nell'esecuzione per ciò che vorrei fare io. In pratica, ad occhio ci mette almeno un paio di secondi. Ho letto che python è pseudointerpretato, quindi è esclusa la compilazione, quali posso essere le altre ottimizzazioni?. Di seguito schizzo del codice Dimenticavo la versione adottata da arduino è la 2.7 Grazie Luigi #!/usr/bin/python import sys sys.path.insert(0, '/usr/lib/python2.7/bridge/') from bridgeclient import BridgeClient as bridgeclient def ReadSensors(): NSensori=['Sacqua','Sgas','Sfiamma','Stato1','Temperatura1','Umidita1','Stato2','Temperatura2','Umidita2'] VReturn = [] value = bridgeclient() for index in range(len(NSensori)): valore = value.get(NSensoriindex) if (valore!=None) and (valore2=='0'): VReturn+= NSensoriindex,valore return VReturn print ReadSensors() --- Ultima modifica di luigi67 in data 2016-12-23 12:23:54 --- --- Ultima modifica di luigi67 in data 2016-12-23 12:26:31 --- --- Ultima modifica di luigi67 in data 2016-12-23 12:27:14 --- |
|
Scritto da Daniele aka Palmux |
2016-12-23 18:17:14 - Re: utilizzo python con arduinoYun
|
Ciao Luigi e benvenuto.
Ora non conosco la versione Yun che è sicuramente uno dei prossimi acquisti visto che me ne parlano benissimo, uso una vecchia versione NG. Oltretutto, siamo ancora nelle premesse scusami , sono sopratutto uno smanettone di RPi che invece utilizzo con Python e del quale sono felice possessore di un numero variabile (?!?) di piattaforme. Lamenti una lentezza di esecuzione dello script in questione, ma esattamente in cosa è lento? Cioè lo script, anche se un po' più complicato di quello che mostri, mi sembra comunque banale, forse c'è una latenza troppo grande nel sensore di rilevazione? Esistono spesso delle regolazioni che possono essere eseguite sui sensori, per aumentarne o diminuirne il grado di risposta o di sensibilità, hai provato a dare un'occhiata a questo aspetto? Altra cosa, tanto che non ci sente nessuno, ma essendo Arduino non ti conviene fare uno script in C visto che hai già le conoscenze necessarie? Sicuramente l'esecuzione sarà più veloce del nostro caro amico . Fammi sapere come va. Cya |
|
Scritto da luigi67 |
2016-12-28 22:53:24 - Re: utilizzo python con arduinoYun
|
p { margin-bottom: 0.25cm; line-height: 120%; }
Grazie per la risposta ho scoperto che la lentezza è dovuta alla libreria bridge che in pratica apre e chiude continuamente dei socket, ho provato con una connessione seriale e questo rallentamento non c’è. Alla fine però avrei deciso di usare comunque lai libreria Birdge e gestire il rallentamento. Avrei deciso di usare python dato che c’è una libreria bella e pronta per queste connessioni che come dicevo è la libreria bridge. Comunque grazie per l’aiuto, sicuramente in questa avventura qualche altra domandina la faro. Grazie Luigi |
Pagina: 1
Esegui il login per scrivere una risposta.