Reely Wavebraeaker : schrottiger brushed regler drin

cesco1

Erfahrener Benutzer
#1
Mein vorhergehendes brushless boot hat sich für FPV als ziemlich ungeeignet erwiesen. Deshalb hab ich mir einen Reely Wavebraeaker geholt. Der wird durch zwei 380'er brushed angetrieben und hat KEIN ruder, dafür genügend platz für den 10ah akku. Gesteuert wird über die motoren. Der verbaute regler ist aber schrott. Ein gleichmässiger lauf ist damit nicht hinzubekommen, die drehzahl eiert rum, gasannahme ist sprunghaft.



Das boot soll nicht vollgas fahren, gemütlich mit FPV die gegend erkunden soll es. Nach etwas messen war klar die power elektronik ist gut, nur die ansteuerung totaler schrott. Also hab ich die ansteuerung durch einen $3 arduino ersetzt. Dieser kann nun 256 schritte PWM, wählbar von 1khz bis 32 khz ansteuerfrequenz. Als empfänger kann er einzelkanäle (int0 und icp) oder ppm-sum (icp) mit 1us auflösung oder dann sbus / ibus / sumd (seriell) und das OHNE jegliche drehzahl schwankungen.

An der original elektronik waren nur 2 leitungen durchzutrennen und 2 drähte einzulöten. Siehe bild. Wenn jemand das nachvollziehen will bin ich gerne bereit die firmware für den arduino zu teilen.

 
Zuletzt bearbeitet:
#2
Hallo cesco1,

also wenn du schon anbietest den Quellcode mit uns zu teilen würde ich mich sehr darüber freuen da mal 'reinschauen zu dürfen!

Sind ja einige interessante Sachen dabei :D.

Gruß Stephan
 

cesco1

Erfahrener Benutzer
#3
Serielle RX hab ich inzwischen gelöscht (brauche seriell für GPS) aber es war der code hier:
https://github.com/Cesco1/ArduHL/blob/master/rx.ino

Beschreibung:
Output:
Für PWM ausgabe verwende ich 8-bit timer2. Die verschiedenen pwm frequenzen werden mittels prescaler und phase-correct / fast mode eingestellt.

Input:
Timer1 läuft mit 1us steps und wird für ICP gebraucht, ppmsum oder 1 einzelkanal.
Einzelkanal 2 geht über INT0 und verwendet timer1 als zeitgeber.

Da eingang INT1 leider nicht verfügbar ist werde ich einzelkanal 3 noch als PCINT ausführen. Dieser kanal soll nur als schaltfunktion dienen.

Achtung ! der code ist für ein 8mhz arduino. Beim 16mhz müssen die konstanten im icp und int0 driver verdoppelt werden, rcValue muss halbiert werden !
 

Anhänge

Zuletzt bearbeitet:

cesco1

Erfahrener Benutzer
#5
Gern geschehen :)

Z.z bin ich daran ein GPS reinzumachen. Das boot soll dan bei empfangsverlust oder auf kommando an die startstelle zurückkommen.

Das ist nicht so einfach weil das gps eine riesige latenzzeit hat. Der "akutuelle kurs" ist immer ein paar sekunden alt was zur uebersteuerung und zu schlangenlinien führt. Ich muss die korrekturen entsprechend klein halten dass das nicht aufschwingt. Die simulation läuft inzwischen, was aber nicht heisst dass es in der realen welt auch geht.

Sim RTH 5hz gps


Sollte das mal real gut funktionieren sind sachen wie wegpunkte anfahren kein problem mehr.
 
Zuletzt bearbeitet:
FPV1

Banggood

Oben Unten