PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Vorprogrammierter Baby Orangutan B328



petwey
19.07.2013, 14:20
Hallo Forum,

erst mal schön bei EUCH zu sein.

Habe mir den B328 als Regler für einen Motor ausgeguckt. Passt auch genau zu dem Motor und der Anwendung.

Aber ich will es mir nicht antun ihn selbst programmieren zu müssen sondern ihn vorprogrammiert kaufen.

Vielleicht kann mich hier jemand unterstützen, natürlich nicht unentgeldlich.

Der Baustein soll über die serielle Schnittstelle angesprochen werden und nur einen Motor verschieden schnell zwischen Endschaltern verfahren lassen. Es sollen zwei inneinander verschachtelte Arbeitsbereiche geben die jeweils von Endschaltern begrenzt sind. Die Endschalter des äußeren Bereichs sollen immer aktiv sein, die inneren optional zugeschaltet werden können. Endschalter bedeutet man kann aus der Endlage in entgegengesetzter Richtung herausfahren.
Der Baustein darf den Motor nur betreiben wenn ein Reizimpuls gesendet wird, dieses muss alle 2s umschalten, fällt es aus muss der Motor stromlos werden.
Reset des Programms per RS232. Ist vielleicht der Reset so möglich, dass er wie ein Low-Signal auf der /RESET wirkt (auch per RS232 und wenn das Programm klemmt)
Die restlichen Möglichkeiten des Bausteins sollen nach Vermögen ausgenutzt werden (1x Analog Input, DIOs gleichmäßig verteilt).

Für die Kommunikation stelle ich mir ASCII-Befehle vor (Beispiel):
- /Mx - Motor Enabled 0=aus / 1=ein (Wenn PWM-Signal und Richtung vorhanden, dann auch Drehbewegung)
- /Pxxx - PWM-Signal 0..255
- /Dx - Drehrichtung 0=Links, 1=Stopp,Bremsen, 2=Rechts
- /Sxx - Setzen der digitalen Ausgänge (hex oder ASCII)
- /Rd - Lesen der digitalen Eingänge (hex oder ASCII) beinhaltet auch die Endschalter.
- /Ra - Lesen des analogen Eingangs
- /X - Reset
- /Wx - Sicherheitssignal (LifeToggle, Watchdog)
- /Ox - Innere Endschalter 1=aktiv, 0=inaktiv
Alle Befehle werden mit CR abgeschlossen, Antworten des Controllers (/R) mit CR+LF gesendet.

Schon mal Danke im voraus,

MfG,
petwey

Hubert.G
20.07.2013, 09:48
Hallo petwey
Willkommen im Forum
Vielleicht findest du jemanden der dir die Programmierung nach deinen Vorstellungen macht.
Allerdings ist die allgemeine Meinung hier im Forum:
"Wir unterstützen dich sehr gerne wenn du Probleme mit deinem Projekt hast, aber wir entwickeln es nicht für dich."

oberallgeier
20.07.2013, 15:32
... Vielleicht findest du jemanden ... nach deinen Vorstellungen ... Allerdings ...Ok, die Aufgabenbeschreibung ist besser als die von so manchem Bachelor-Semster-SonstwieArbeit-Hilfeschrei, auch wenn ich manches vermisse. Aber: ich hab für meinen Archie ne RNControl (als Master) und ne eigene Servoplatine, jeweils mit m1284, die erledigen ähnliche Aufgaben. Die UART-Kommunikation Rx und Tx habe ich im Wesentlichen für Testzwecke aufgebaut, das läuft bei mir recht gut. Ich stelle mir vor, dass die Motor-/Endschalter-steuerung der Eingangsbeschreibung und meine Servosteuerung ähnliche Komplexität hat - und ich habe rund fünftausend Zeilen Quellcode einschließlich Kommentaren. (Anmerkung: auch für Motorsteuerungen traue ich mir eine Abschätzung zu, läuft bei mir zT. auch mit nem m328 in Dottie, WALL R und MiniD0 - dem Treiber vom babyO traue ich nicht wirklich, weil ich schon einen bei meinem WALL R geschossen hatte). Es dürfte also ähnlich umfangreich werden, dazu die Dokumentation, damit man nicht im Jahre Schnee noch zur Nachbesserung/Änderung aufgefordert wird. Oder wenn man ne Änderung annimmt, damit man selber wieder durchblickt. Irgendwie - recht umfangreich . . . nix für mich - abgesehen von sonstigen Vorbehalten. Leider.

petwey
20.07.2013, 22:11
Hallo Hubert.G und oberallgeier,

Danke für die klare Ansage. Meine Hoffnung war jemanden zu finden der mir die Arbeit abnimmt, aber bereits während ich meinen Beitrag formuliert habe ist mir klar geworden, dass ich hier wahrscheinlich selbst Hand anlegen muss, nicht zuletzt weil mir dann doch noch was einfällt was ich gerne hätte oder weil es das Projekt erfordert. Aus diesem Grund habe ich bereits Baby Orangutan, Bascom, ISP-Kabel und Bascom-Buch geordert, ich hoffe das klappt alles!

Zur Info ich habe schon mit unterschiedlichen industriellen Motorreglern gearbeitet (Elmo, Doli) und auch dort Controller-, als auch Steuerungssoftware geschrieben, daher meine klare Vorstellung was ich gerne hätte.

Ich habe mich ein bißchen im Forum und in Bascom (Demo) umgeschaut und ich denke das Projekt läßt sich über Interupts auf vier digitale Eingänge (Endschalter), Interrupt auf die serielle Schnittstelle aufbauen. Befehle kommen über die serielle Schnittstelle rein und werden in einer State-Machine verarbeitet. Eine Beschleunigungs- und Verzögerungsrampe für die Ansteuerung der Motoren sollte vorgesehen werden. Der Kontroller sollte in seiner freien Zeit die Zustände der DIOs und AIs auf die serielle Schnittstelle legen, dann brauch ich sie nicht abzufragen. Vielleicht aktiviere ich auch noch den I2C-Bus, dann ist das System offen für Erweiterungen. Über die Aktivität der seriellen Schnittstelle läßt sich die Absicherung des Reglers realisieren. Damit sollte sich die Anforderung eigentlich realisieren lassen.

Falls ihr irgendwo Fallen seht, dann sagt es mir bitte. Bin für jeden Hinweis dankbar.

Danke im voraus.
petwey

oberallgeier
20.07.2013, 23:08
... ich habe schon mit unterschiedlichen industriellen Motorreglern gearbeitet ...Ohh, Fallen. Die sehe ich nicht soo oft, meist erst wenn ich drin bin *gg*.

In Bascom kann ich leider nicht helfen - ich schreibe meine Programme in C (oder Cäh). Hier wäre für den mega328, der ja auch am babO-328 tickt, meine Regelroutine (klick). (https://www.roboternetz.de/community/threads/36121-Autonom-in-kleinen-Dosen-R2_D03-Nachfolger-R3D01?p=421502&viewfull=1#post421502) Die steuert einen L293D als Motortreiber; der TB66** ist nicht sooo sehr anders. Vielleicht hilft Dir das - obwohl Du ja da zuhause zu sein scheinst.

petwey
21.07.2013, 09:09
Nochmals Danke.

ABER ich denke das Thema hat jetzt nichts mehr hier verloren, denn es ist zu softwarelastig und sollte verschoben werden. Passend scheint mir Microcontroller / Atmel AVR Controller und Programmierung / Basic Programmierung (Bascom-Compiler) zu sein. Ich werde die Moderatoren entsprechend anschreiben.

MfG,
petwey