
|
![]() | #1 (permalink) Top |
User Data registr.: 16-05-2006 Residenza: Firenze - Augusta
Messaggi: 1.148
| switch ppm con Arduino, possibile?
Buona sera a tutti. Ho un piccolo questito da porre a chi arduino lo conosce bene. Purtroppo io devo ancora addentrarmi in questo nuovo mondo. Per elettronica nessun problema, sulla programmazione sono in alto mare. Veniamo al dunque: Ho la necessità di switchare il segnale ppm proveniente dalla ricevente, da una batteria di 4 servi ad un'altra sempre da 4 servi. Inizialmente volevo usare dei semplici switch, ma ho pensato che con questo progetto potessi cominciare realmente ad addentrarmi in Arduino. Come dovrà funzionare: Il passaggio dai primi 4 servi ( collegati uno per canale rx) a gli altri avverà tramite un'interruttore della radio. Devo avere la possibilità di inserire un delay in attivazione e disattivazione su ogni canale in modo da poter ritardare le varie uscite. Domande: potrò incorrere in interferenze? Potrò avere degli sfarfallii ai servi? Che tipo di arduino mi consigliate? Io posseggo già una uno pronta per essere sverginata. Il progetto è fattibile secondo voi? Grazie mille e a presto.
__________________ Danny |
![]() | ![]() |
![]() | #2 (permalink) Top |
User |
Secondo me è fattibilissimo. Nel loop con il digitalread rilevi constantemente il segnale pwm in ingresso dalla rx, lo attribuisci ad una variabile, lo restituisci ad una batteria di servi if(canale dello switch> di un certo valore and millis > delay), lo restituisci all'altra batteria altrimenti. Non so se sono stato chiaro anche perché ci vuole un minimo di conoscenza di linguaggio arduino/c. Se vuoi posso provare a buttare giù il codice. |
![]() | ![]() |
![]() | #3 (permalink) Top |
User Data registr.: 16-05-2006 Residenza: Firenze - Augusta
Messaggi: 1.148
|
grazie mille per l'aiuto. Si mi farebbe piacere che te mi aiutassi con il codice ma a me interessa anche capire. Intanto posso usare la uno che ho già in casa? Grazie mille ancora, spero io riesca a fare ciò che ho in mente. A presto.
__________________ Danny |
![]() | ![]() |
![]() | #4 (permalink) Top | |
User | Citazione:
Alla fine i pin di cui hai bisogno sono: 8 uscite ai servi, 4 ingressi dalla rx e un ingresso sempre dalla ricevente per il canale dello switch. La meglio cosa per capire è leggerti un pò di informazioni su come gestire i segnali pwm con arduino! Ce ne sono molte sul sito o nella wiki. Sei proprio a zero o già sai come fare per dichiarare variabili, fare confronti ecc ecc.? Intanto io butto giù un pò di codice. | |
![]() | ![]() |
![]() | #5 (permalink) Top |
User Data registr.: 16-05-2006 Residenza: Firenze - Augusta
Messaggi: 1.148
|
Ho letto il libricino "primi passi" solo che non ho mai messo le mani in pasta. Devo partire da zero con tutti i linguaggi.... Comunque domani mi metto a studiare sul pwm . Ciao e grazie ancora.
__________________ Danny |
![]() | ![]() |
![]() | #6 (permalink) Top |
User Data registr.: 16-05-2006 Residenza: Firenze - Augusta
Messaggi: 1.148
|
Buongiorno Allora..... Ho ripreso in mano il libro di arduino e ho ricominciato a dare una lettura. Ho scritto uno sketch sicuramente sbagliato ma devo pur cominciare...... Quello che m'interessa al momento è sapere se il concetto scritto è giusto, non m'interessa sapere se è correttamente scritto o se funzionera'. Questo è quanto scritto: int ch1 = 1; int ch2 = 2; int ch3 = 3; int ch4 = 4; int ch8 = 5; int ch1(2) = 6; int ch2(2) = 7; int ch3(2) = 8; int ch4(2) = 9; int ch1(3) = 10; int ch2(3) = 11; int ch3(3) = 12; int ch4(3) = 13; void setup() { pinMode(ch1, INPUT); pinMode(ch2, INPUT); pinMode(ch3, INPUT); pinMode(ch4, INPUT); pinMode(ch8, INPUT); pinMode(ch1(2), OUTPUT); pinMode(ch2(2), OUTPUT); pinMode(ch3(2), OUTPUT); pinMode(ch4(2), OUTPUT); pinMode(ch1(3), OUTPUT); pinMode(ch2(3), OUTPUT); pinMode(ch3(3), OUTPUT); pinMode(ch4(3), OUTPUT); } void loop() { // read the value from the sensor: ch1 = analogRead(ch1); ch2 = analogRead(ch2); ch3 = analogRead(ch3); ch4 = analogRead(ch4); ch8 = analogRead(ch8); if ch8= LOW digitalWrite(ch1(2), Valore letto da ch1 ); digitalWrite(ch2(2), valore letto da ch2 ); digitalWrite(ch3(2), valore letto da ch3 ); digitalWrite(ch4(2), valore letto da ch4 ); else digitalWrite(ch1(3), valore letto da ch1) ; digitalWrite(ch1(3), valore letto da ch2) ; digitalWrite(ch1(3), valore letto da ch3) ; digitalWrite(ch1(3), valore letto da ch4) ; In pratica sto cercando di dire ad arduino che i 4 canali principali CH1,2,3,4 devono leggere il segnale proveniente dalla rx. Se ch8 ha un segnale basso ( switch radio basso) il segnale deve uscire dalla batteria di canali CH 1,2,3,4 (2) altrimenti uscire dall'altra batteria ch1,2,3,4 (3). E' la prima volta che scrivo un codice non mi massacrate ![]()
__________________ Danny |
![]() | ![]() |
![]() |
Bookmarks |
| |
![]() | ||||
Discussione | Autore discussione | Forum | Commenti | Ultimo Commento |
Miscelare segnali PPM con arduino | felis | Circuiti Elettronici | 16 | 12 aprile 16 18:03 |
Collegamento ppm da radio a ricevente diretto, possibile? | EnriVincenzi | Radiocomandi | 25 | 16 settembre 14 09:22 |
Emulare con Arduino un segnale PPM | baccothe | Circuiti Elettronici | 17 | 11 febbraio 14 19:10 |
aiuto con arduino e ppm | alex-military | Circuiti Elettronici | 0 | 22 febbraio 13 13:52 |