]> git.piffa.net Git - aerei_site/blob - _posts/esempi/2017-02-20-alettoni-fsm.markdown
Navbar
[aerei_site] / _posts / esempi / 2017-02-20-alettoni-fsm.markdown
1 ---
2 layout: post
3 title:  "Alettoni e Trottle con FSM"
4 date:   2017-02-20 08:14:16 +0100
5 categories: esempi 
6 ---
7
8 Questo sketch pilota una striscia RGB in base agli alettoni: bianco con roll neutro, verde da un lato e blu dall'altro. Per enfatizzare la transizione tra neutro -> rollio si verifica un lampeggio di mezzo secondo nella transizione.
9
10 Il throttle e' associato a un ciclo IF che pilota un LED in PWM sul motore e due lampeggiatori laterali: al throttle e' a zero corrisponde uno PWM in dissolvenza verso il bassso per il motore e per i lampeggiatori, con throttle normali la luminosita' del motore e' proporzionale a questo, i LED laterali lampeggiano a una frequenza proporzionale al throttle. A throttle al massimo c'e' una serie di lampeggi casuali per simulare un effetto afterburner.
11
12
13 INPUT:
14 * PIN 2   : throttle
15 * PIN 3   : alettoni
16
17 OUTPUT:
18 * ailerons    RGB Alettoni 
19 * motore      Motore PWM
20 * left, right 2 Lampeggiatori PWM laterali + PWM
21
22 FSM per alettoni
23 = 3 stati + 2 transizioni:
24 - piatto
25 - roll a sx
26 - roll a dx
27 - piatto -> sx
28 - piatto -> dx
29
30 Tramite la lettura del valore del *throttle* vengono indicati 3 stati: 
31 * IDLE: gas praticamente a zero
32 * Max: a tutto gas!
33 * Medio: tutti i valori intermedi
34
35
36
37 {% highlight cpp %}
38 {% include_relative /repo/esempi/ailerons_state_thrFSM/ailerons_state_thrFSM.ino %}
39
40 {% endhighlight %}
41