BLCD Probleme mit A4935-T

Gast #1254272
Lesenswert?
• ▲
▼
Hi!

Ich bin ein echter Neuling was das programmieren von Hardware angeht und 
ich versuche momentan einen BLCD Motor über den A4935 anzusteuern. 
Programmiert wird ein AT91Sam7x und der Motor ist ein EC 45 flat.
Ich möchte momentan den Motor auf Vollgas laufen lassen was mir in der 
cw Rotation auch gelingt aber bei der ccw Rotation komme ich gerade auf 
ein viertel der cw Rotation.

    CW Kommutierung               CCW Kommutierung
101 A - B HS1 - LS2               B - A HS2 - LS1
001 A - C HS1 - LS3               C - A HS3 - LS1
011 B - C HS2 - LS3               C - B HS3 - LS2
010 B - A HS2 - LS1               A - B HS1 - LS2
110 C - A HS3 - LS1               A - C HS1 - LS3
100 C - B HS3 - LS2               B - C HS2 - LS3

Die Hallsensoren sind als Interrupts programmiert.
Ich komme momentan einfach nicht weiter und habe auch keinen Plan mehr.


LG

Tobias
#1254422
Lesenswert?
• ▲
▼
Die Hallsensoreneingänge lösen einen Interrupt aus. Dort manipulier ich 
dann ein int ala

H1 hat ausgelöst und ist aktiv  nhallsensoren = hallsensoren | 001
H2 hat ausgelöst und ist aktiv  nhallsensoren = hallsensoren | 010
H3 hat ausgelöst und ist aktiv  nhallsensoren = hallsensoren | 100


H1 hat ausgelöst und ist inaktiv  nhallsensoren = hallsensoren & 110
H2 hat ausgelöst und ist inaktiv  nhallsensoren = hallsensoren & 101
H3 hat ausgelöst und ist inaktiv  nhallsensoren = hallsensoren & 011

Dann wird die cw oder ccw Rotationsfunktion aufgerufen, welche die 
Spulen dann entsprechend bestromt.


LG

Tobias
Gast #1254430
Lesenswert?
• ▲
▼
Ich hab mal nen alten source-code von mir ausgekramt,
war bldc-regelung ohne Sensoren. Hab mal versucht das
auf hall sensoren zu übertragen.

Probier mal diese Sequenz:

cw bleibt.                        ccw:
101 A - B HS1 - LS2               B - A HS1 - LS3
001 A - C HS1 - LS3               C - A HS2 - LS3
011 B - C HS2 - LS3               C - B HS2 - LS1
010 B - A HS2 - LS1               A - B HS3 - LS1
110 C - A HS3 - LS1               A - C HS3 - LS2
100 C - B HS3 - LS2               B - C HS1 - LS2

Wie gesagt, bei mir wars sensorlos, ich hatte diese Zuordnung zur 
Bitkombination nicht. Von der Reihenfolge her müsste es stimmen,
ist aber ohne Gewähr.

Gruß

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.