You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,22 +1,22 @@
1
-
# ServoFlappingControl:bird:
1
+
# Servo controller for ornithopter:bird:
2
2
This Arduino sketch is the servo controller for an RC ornithopter (Flapping MAV) powered and controlled by two servos. Each servo is connected to a wing and flapped independently.
3
3
4
4
## How it works
5
5
The program is designed to receive 4 PWM inputs from an RC receiver operating in [MODE 2](https://www.rc-airplane-world.com/rc-transmitter-modes.html) and outputs 4 PWM signals for off-the-shelft hobby servos. Two servos control the wings and two servos control a V-tail.
6
6
7
-
The aileron (1) and elevator (2) channels are used to modify the motion of the wings and to control the tail. The dihedral angle of the wings is altered in unison with elevator, while the aileron rotates them in opposite directions. Simultaneously, the frequency of the wing-oscillation can be modulated, such that the wings move faster during the downstroke or during the uptroke. Depending on whether this is done symmetrically or assymetrically, one can obtain pitch or roll control.
7
+
The _aileron (1) and elevator (2)_ channels are used to modify the motion of the wings and to control the tail. The dihedral angle of the wings is altered in unison with elevator, while the aileron rotates them in opposite directions. Simultaneously, the frequency of the wing-oscillation can be modulated, such that the wings move faster during the downstroke or during the uptroke. Depending on whether this is done symmetrically or assymetrically, one can obtain pitch or roll control.
The throttle channel (3) control the amplitude of a fixed-frequency oscillation. By the default, the waveform is a triangle-wave, but the throttle can also be used to trucante the wave so it looks more like a square wave. Using a square wave allows the servo to output more mechanical power, but the transition between strokes is abrupt. The truncated-wave eases this transition.
13
+
The _throttle channel (3)_ controls the amplitude of a fixed-frequency oscillation. By the default, the waveform is a triangle-wave, but the throttle can also be used to trucante the wave so it looks more like a square wave. Using a square wave allows the servo to output more mechanical power, but the transition between strokes is abrupt. The truncated-wave eases this transition.
The rudder channel (4) is used to assymetrically vary the amplitude of the wings.
19
+
The _rudder channel (4)_ is used to assymetrically vary the amplitude of the wings.
20
20
21
21
## Schematics
22
22
__Nano__: While the program was written for an Arduino Nano, it should be compatible with similar boards. If you don't want to use tail servos, simply remove them from the circuit and dissable their code using the _parameters.h_ file.
@@ -33,4 +33,4 @@ __ATTiny__: As this microcontroller has less pins it does not support tail servo
33
33
34
34
35
35
## Example
36
-
See: [Explanation and operation of servo controller](https://youtu.be/T6NfZD_iuEs)
36
+
See: [explanation and operation of servo controller](https://youtu.be/T6NfZD_iuEs)
0 commit comments