Forum: Mikrocontroller und Digitale Elektronik Bascom : 4-5 Empfängersignale auswerten?


von Dominik Schmidt (Gast)


Lesenswert?

Moin !

Hat jemand etwas Code für mich, mit dem ich (RC-) Empfängersignale 
auswerten kann (PPM)?

Ich möchte gerne 4-5 RC Kanäle auswerten. es steht aber kein 
Summensignal zur Verfügung.

von Roland Z. (r-zimmermann)


Lesenswert?

Hallo,

etwas mehr infos wären nicht schlecht, wie liegen die Signale vor, was 
für eine Information möchtest du aus den signalen gewinnen, usw.
Sollte in Bascom eigentlich ganz einfach sein, du läßt nen Timer 
durchrennen und jede Signal das eintrifft wird quasi als "Trigger" 
verwendet. Durch ein wenig rechnerei bekommst du die Impulslänge dann 
als Ergebnis.

MfG
Roland

von Dominik Schmidt (Gast)


Lesenswert?

Moin !

Also, ich habe da einen Miniempfänger. Von dem müsste ich eben 4-5 
Kanäle auslesen.

Was ich damit will ...
Ich möchte einen kleinen Prozessor für die X-Twin Fliegerchen proggen. 
Somit könnte ich dann mit meiner normalen Fernsteuerung fliegen und muss 
nich diesen BilligPlastikSchrott nutzen.
Der Porzessor hat 2 FETs angeklemmt die direkt 2 Bürstenmotoren steuern 
per PWM.

Und mit den 4-5 Kanälen übergebe ich ihm eben Gas, Höhe, Querruder und 
eben 1-2 Steuerfunktionen (noch nix in Planung).

Also würden auch erstmal 3 Kanäle reichen :-)

von Roland Z. (r-zimmermann)


Lesenswert?

Hmm,

das klingt interessant :D

Ich glaube ich hab eventuell was das vor längerer Zeit mal in C 
realisiert wurde. Es ist ein Programm daß die Empfangenen 
Fernsteuersignale entgegennimmt und den aktuellen wert in Variablen zur 
verfügung stellt. Benutzt wenn ich mich richtig erinnere nur einen Timer 
des uC. Ich muß mal sehen ob ich das heute Abend daheim noch finde. Wenn 
ja werde ich das hier mal Posten.

Kommst du mit C zurecht oder lieber Bascom? Vielleicht kann ich dir das 
sonst auf die schnelle in Bascom portieren.

Roland

von Dominik Schmidt (Gast)


Lesenswert?

Moin !

Nuja wenn du es portieren könntest wäre Klasse.

Mein C ist eingerostet .....

von Roland Z. (r-zimmermann)


Lesenswert?

Ok,

ich werde mal sehen was ich tun kann heute Abend (hoffentlich finde ich 
das Projekt auf die schnelle noch..... g)

Roland

von Rahul D. (rahul)


Lesenswert?

Man fragt einfach in reglemässigen Abständen (Timer) die 4-5 Eingänge ab 
und vergleicht deren aktuellen Zustand mit dem vorherigen. Dadurch kann 
man Flanken detektieren.
Hat man auf einem Kanal eine positve Flanke erkannt, speichert man den 
Timerstand. Wurde auf dem gleichen Kanal eine fallende Flanke erkannt, 
dann speichert man wieder den Timerstand und zieht den ersten von 
zweiten ab.
Aus dem Ergebnis kann man dann auf die Pulslänge schliessen.
Hannes Lu hat sowas in Assembler programmiert...

von Simon K. (simon) Benutzerseite


Lesenswert?

Rahul Der trollige wrote:
> Hannes Lux hat sowas in Assembler programmiert...
Und tut es sicher immernoch ;)

http://www.hanneslux.de/avr/mobau/index.html

von Hannes L. (hannes)


Lesenswert?

> Und tut es sicher immernoch ;)

Nööö, im Moment nicht, ist doch bereits fertig... ;-)
Würde ich aber heute anders machen, allerdings wieder in ASM.

...

von Rahul D. (rahul)


Lesenswert?

Man könnte es wohl auch mit den Pinchange-Interrupts lösen...

von Hannes L. (hannes)


Lesenswert?

Rahul Der trollige wrote:
> Man könnte es wohl auch mit den Pinchange-Interrupts lösen...

Jou... - Nur hatte den der AT90S2313 noch nicht. Auch eine höhere 
Auflösung (als die damals von mir verwendete) sollte ohne weiteres 
machbar sein.

Wobei zu bedenken ist, dass PCI in BASCOM kritisch (zeitkritisch) werden 
könnte, wenn man BASCOM nicht sehr genau kennt und nicht weiß, wie man 
den Interrupt-Overhead minimieren kann... Also ohne etwas ASM-Wissen 
wird's auch in BASCOM nicht gehen.

...

von Roland Z. (r-zimmermann)


Lesenswert?

Hallo,

sorry daß ich mich erst jetzt melde, habe den Quellcode zwar gefunden 
bin aber bis jetzt noch nicht dazu gekommen das ganze mal rudimentär auf 
Bascom umzustricken da mich die Arbeit fest im Griff hatte (hatte 
bereitschaft und es war recht viel los).

Ich kann nicht sagen ob mir es dieses Wochenende noch reicht.
Schau dir doch mal das Programm von Hannes Lux an vielleicht kannst du 
das ein wenig "umbauen" für deine Zwecke. :)

MfG
Roland

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
Noch kein Account? Hier anmelden.