Scheibenwischermotoren Problem

abend!

derzeit bin ich im aufbau eines fahrbaren gestelles, das schlussendlich am beispiel eines staubsauger-roboters eigenständig durch den raum fahren soll...

die steuerung schaut so aus, dass zwei zentral gelagerte Räder, die mittels scheibenwischermotoren angetrieben werden, drehung (in gleichlaufenden richtungen drehend) und fahrt (in entgegengesetzten richtungen drehend) übernehmen sollen. die motoren sind darum 180° gedreht zueinender verbaut:

die motoren werden mit einem Arduino MEGA über PROFETs (Neuhold Elektronik die Fundgrube für den Hobby-Elektroniker Profet BTS430K2) in je einer H-Bridge gesteuert.

die steuerung funktioniert in der drehung einwandfrei (siehe video), jedoch kann ich (vielleicht wegen induktionsspannungen???) die fahrt nicht aufnehmen, sprich die motoren entgegengesetzt laufen lassen.
ohne anschliessen der motoren machen die spannungen genau das was sie sollen - hab ich mit dem multimeter schon gecheckt. ich habe versucht, schottky dioden vor je einer H-Bridge anzuschliessen, da ich vermutet habe, es könnte an irgendwelchen rückwirkenden spannungen liegen, doch das ändert auch nichts.
da ich elektronisch nicht sehr advanced bin, frage ich, ob vielleicht jemand eine idee hat, was ich noch probieren kann?

ich danke für jeden tipp!
btw das ganze wird eine fahrbare dusche

die motoren werden mit einem Arduino MEGA über PROFETs ... in je einer H-Bridge gesteuert.

Bitte Schaltplan oder Skitze. Hast Du mit den PROFETs 2 H-Brücken gebaut? Wie steuerst Du die PROFETs an. Wie schaut dein Sketch aus?
Können beide Motoren gleichzetig vorwärts und rückwärts fahren aber nicht entgegengesetzt?

Bist Du sicher daß die Motoren in beider Richtungen drehen können? Bei Scheibenwischern ist das nämlich nicht nötig. Die Hin-Herbewegung wird nämlich über einen Hebel realisiert da man somit keine Endschalter oder Umpolung braucht.
Haben die Motoren den Minuspol vieleicht am Gehäuße, weil beim Auto sowieso die ganze Karosserie Masseleiter ist?

Grüße Uwe

blauhboot:
da ich elektronisch nicht sehr advanced bin, frage ich, ob vielleicht jemand eine idee hat, was ich noch probieren kann?

Einen Wischermotor ausbauen und mal im niedrigen Ohm-Messbereich eines Multimeters nachmessen, ob nicht MASSE und CHASSIS/GEHÄUSE des Wischermotors miteinander verbunden sind.

Wenn Du nämlich zwei Motoren an ein gemeinsames Metallgestell dranschraubst und jeder der Motoren hat Masse nicht nur am elektrischen Anschluß sondern auch an Chassis/Gehäuse, dann haben die beiden Motoren eine gemeinsame Masse und Du kannst sie dann nicht mit vertauschten Polen befeuern.

Beim Einbau müßtest Du dann mindestens einen der Motoren vollkommen elektrisch isoliert einbauen, damit die beiden Motorchassis keinen elektischen Kontakt miteinander haben.

uwefed:
Bitte Schaltplan oder Skitze. Hast Du mit den PROFETs 2 H-Brücken gebaut? Wie steuerst Du die PROFETs an. Wie schaut dein Sketch aus?
Können beide Motoren gleichzetig vorwärts und rückwärts fahren aber nicht entgegengesetzt?

sorry!
hier der schaltplan:

schaltung bei drehung (funktioniert):

schaltung beim fahren (funktioniert nicht):

und der beispielsketch mit dem ich teste:

byte richtung = 0;
int motorEinsS1 = 22; int motorEinsS2 = 24; int motorEinsS3 = 26; int motorEinsS4 = 28; //1M
int motorZweiS1 = 30; int motorZweiS2 = 23; int motorZweiS3 = 25; int motorZweiS4 = 27; //7M
//http://upload.wikimedia.org/wikipedia/commons/d/d4/H_bridge.svg
boolean blablabla;

void setup(){
for(int profet = 22; profet <= 30; profet++){
pinMode(profet, OUTPUT);
digitalWrite(profet, LOW);
}
Serial.begin(9600);
blablabla = LOW;
}

void loop(){
while(Serial.available()){
if(Serial.read() == 'a'){
blablabla = !blablabla;
}
if(blablabla == HIGH)
richtung = 0;
else
richtung = 8;
fahre(1000);
}
}

void fahre(int warteZeit){
if(richtung < 8 ){
Serial.println("Vorwaerts");
digitalWrite(motorEinsS1, HIGH); digitalWrite(motorEinsS2, LOW); digitalWrite(motorEinsS3, LOW); digitalWrite(motorEinsS4, HIGH);
digitalWrite(motorZweiS1, LOW); digitalWrite(motorZweiS2, HIGH); digitalWrite(motorZweiS3, HIGH); digitalWrite(motorZweiS4, LOW);
//digitalWrite(motorZweiS1, HIGH); digitalWrite(motorZweiS2, LOW); digitalWrite(motorZweiS3, LOW); digitalWrite(motorZweiS4, HIGH); //drehen
}
else{ //if(richtung >= 8 )
Serial.println("Rueckwaerts");
digitalWrite(motorEinsS1, LOW); digitalWrite(motorEinsS2, HIGH); digitalWrite(motorEinsS3, HIGH); digitalWrite(motorEinsS4, LOW);
digitalWrite(motorZweiS1, HIGH); digitalWrite(motorZweiS2, LOW); digitalWrite(motorZweiS3, LOW); digitalWrite(motorZweiS4, HIGH);
//digitalWrite(motorZweiS1, LOW); digitalWrite(motorZweiS2, HIGH); digitalWrite(motorZweiS3, HIGH); digitalWrite(motorZweiS4, LOW); //drehen
}
}

jurs:
Einen Wischermotor ausbauen und mal im niedrigen Ohm-Messbereich eines Multimeters nachmessen, ob nicht MASSE und CHASSIS/GEHÄUSE des Wischermotors miteinander verbunden sind.

Wenn Du nämlich zwei Motoren an ein gemeinsames Metallgestell dranschraubst und jeder der Motoren hat Masse nicht nur am elektrischen Anschluß sondern auch an Chassis/Gehäuse, dann haben die beiden Motoren eine gemeinsame Masse und Du kannst sie dann nicht mit vertauschten Polen befeuern.

Beim Einbau müßtest Du dann mindestens einen der Motoren vollkommen elektrisch isoliert einbauen, damit die beiden Motorchassis keinen elektischen Kontakt miteinander haben.

super tipp, danke! probier ich gleich sobald ich wieder daheim bin

Die PROFET® BTS 430 K2 sind laut Datemblatt http://neuhold-elektronik.at/datenblatt/BTS430K2.pdf für das Schalten von Lasten die bei 12/24V Stromversorgung auf Masse geschaltet sind (einen Pol direkt mit Masse verbunden haben). "mC compatible power switch with diagnostic feedback for 12 V and 24 V DC grounded loads"

Daraus folgt, daß Du damit gar keine H -Brücke aufbauen kannst. Diese PROFETS könntest Du im oberen Teil der H-Brücke (zwischen Versorgungsspannung und Motor) aber nicht im unteren Teil zwischen Motor un Masse verwenden. Dort reicht teoretisch ein TTL-Level-N-MOSFET.
Du brauchst keine Dioden zwischen H-Brücke und Versorgungsspannung, sondern antiparalell ( Anode in Richtung Masse) zu jedem MOSFET / PROFET.
Ich rate aber von einm Selbstbau der H-Brücke ab und würde eine gekaufte H-Brücke verwenden.

Deine Beschreibung: "drehen funktioniert; geradeausfahren nicht", bestätigt die Vermutung, daß die Motore einen Pol am Gehäuße haben. Beim drehen des Roboters drehen beide Motoren in die gleiche Richtung. Du hast Glück daß keine PROFET kaputtgegangen sind; das hast Du nur dem internen Überstromschutz zu verdanken. MOSFETS wären kaputtgegangen.

Grüße Uwe

wow danke für die hilfe ihr beiden!

reicht es denn als isolation lediglich die elektrische verbindung zum metallgestell zu unterbrechen (mit PA-schrauben) oder denkt ihr eher an einen faradayschen käfig / metallblech-isolierung?

und uwe, hast vielleicht einen tipp für einen motorsteuer ic der 25A peak aushält?

blauhboot:
wow danke für die hilfe ihr beiden!

reicht es denn als isolation lediglich die elektrische verbindung zum metallgestell zu unterbrechen (mit PA-schrauben) oder denkt ihr eher an einen faradayschen käfig / metallblech-isolierung?

und uwe, hast vielleicht einen tipp für einen motorsteuer ic der 25A peak aushält?

Es genügt eine Isolation des Motors gegenüber dem Metallgestell. Unter "Motor" verstehe ich aber auch die Achse. Ich würde keine PA-Schrauben verwenden; die sind zu schwach. Gummipuffer, die man gegen Vibrationen verwendet, isolieren auch.

Bei 25A peak braucht es schon diskret aufgebaute H-Brücken. Ein IC schafft das nicht. Motorsteuerungen: zB: Watterott electronic

Grüße Uwe

immer wieder geil tipps von dir zu bekommen, danke!

dann wird mir mit 2A continuous und 25A peak pro wischermotor der hier schon reichen

blauhboot:
...dann wird mir mit 2A continuous und 25A peak pro wischermotor der hier schon reichen

Wenn die Werte, die Du nennst stimmen, dann reicht der.
Grüße Uwe