==funkfernsteuerung mit avr mikrokontroller==
hallo,
ich habe hier eine ältere funke für modellflug, mit 4 hebeln mit
widerständen dran, batteriehalter und hf-modul 40MHz.
will sie auf deltamischer aufrüsten, d.h. statt kanal1 und kanal2 soll
kanalX = kanal1+kanal2
und
kanalY = kanal1-kanal2
ausgegeben werden.
einer spontanen idee zufolge reicht dafür ein genügend schneller
at-controller auf einer lochrasterplatte mit ausstattung:
- ic7805 für 5V (die werden an die widerstände geschickt)
- 4 kabel zum abgreifen der widerstandsspannungen und einfüttern in den
mC
- 2 kabel für Versorgung mit 8*1,2V=9,6V
- 1 Kabel mit Pulldown-Widerstand und schalter, 0v=normal, 5V=delta
- 2 kabel zum ausgeben ans hf-modul (1x so, 1x invertiert)
summa 9 kabel, 2 ics, 1 widerstand, 1 schalter
mit folgendem pseudo-code:
ausgang1=0; ausgang2=1; // a2 = 1-a1. immer.
while true
a1=0;
zähle 20 msec ab // sende alle 20 msec
a1=1
zähle 6 msec ab // synchro für ppm-empfänger
a1=0
zähle 0,3 msec ab // pause zwischen pulsen
a1=1
lies und digitalisiere u1 nach r1 // u1 ist spannung an kanal1.
// r1 ist register 1
lies und digitalisiere u2 nach r2 // u2 ist spannung an kanal2.
// r2 ist register 2
lies udelta //
falls (udelta>2V) { // delta an
r1=r1-r2
r2=r1 + 2*r2 // gibt r1-r2 in r1 und r1+r2 in r2
}
berechne n1 in msec: 1 + r1/r1max // maximalwert des
digitalisierers
a1=1 // sende puls für kanal1
zähle n1 msec ab
a1=0
zähle 0,3 msec ab // pause zwischen pulsen
// so jetzt dasselbe für die anderen 3 kanäle
berechne n2 in msec: 1 + r2/r2max // maximalwert des
digitalisierers
a1=1 // sende puls für kanal1
zähle n2 msec ab
a1=0
zähle 0,3 msec ab // pause zwischen pulsen
lies und digitalisiere u3 nach r1 // registersparen
berechne n3 in msec: 1 + r1/r1max // maximalwert des
digitalisierers
a1=1 // sende puls für kanal3
zähle n3 msec ab
a1=0
zähle 0,3 msec ab // pause zwischen pulsen
lies und digitalisiere u4 nach r2
berechne n4 in msec: 1 + r2/r2max // maximalwert des
digitalisierers
a1=1 // sende puls für kanal4
zähle n msec ab
a1=0
zähle 0,3 msec ab // pause zwischen pulsen
end while
* die schaltung würde natürlich am modellauto streß-geprüft ,
bevor sie in den flieger darf *
fragen:
1) sind funkfernsteuerungen wirklich so simpel zu bauen?
2) welchen µC würdet ihr empfehlen?
3) welches Programmierbrett compiler sprache ?
4) gibt es bei 1MHz controllerfrequenz timing-probleme mit den o.g.
msec?
5) warum fand ich im www keinen code/bauplan?
gruss gtslehrer
hannz o. schrieb: > fragen: > 2) welchen µC würdet ihr empfehlen? AT Mega 88 > > 3) welches Programmierbrett compiler sprache ? C Programmierung mit WinAvr und AVR Studio > 4) gibt es bei 1MHz controllerfrequenz timing-probleme mit den o.g. > msec? Nein. > 5) warum fand ich im www keinen code/bauplan? Such erst mal nach "Ansteuerung Modellbauservo" hier im Forum und in den Artikeln hier. Axel
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.