Forum: Mikrocontroller und Digitale Elektronik Mikrocontroller programmieren


von Ma B. (drumstick)


Lesenswert?

Hallo Zusammen

Ich arbeite an einem Schülerprojekt. Wir schieben eine Platte horizontal 
in zwei Richtungen. Motor beinhaltet im Gehäuse die Elektronik. Jetzt 
möchte ich über eine Simulierte Haussteuerung (CAN) den Microcontroller 
programmieren. Wie funktioniert das und welche controller eignen sich am 
besten.??

Vielen Dank für eure Hilfe!

Gruss

M. B.

von Entwickler (Gast)


Lesenswert?

>Wie funktioniert das und welche controller eignen sich am besten.??


Am besten funktioniert das, wenn Du genau sagst, welche 'simulierte 
Haussteuerung' Du verwendest.

von Düsendieb (Gast)


Lesenswert?

M. B. schrieb:
> Jetzt
>
> möchte ich über eine Simulierte Haussteuerung (CAN) den Microcontroller
> programmieren. Wie funktioniert das und welche controller eignen sich am
> besten.??


Du sprichst in Rätseln.

Heist es, dass Deine Motorelektronik über CAN Bus Angesprochen werden 
kann?


Axel

von Lehrmann M. (ubimbo)


Lesenswert?

http://www.mikrocontroller.net/articles/AVR-Tutorial
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial

Hier geht's los. Ich sag dir aber gleich, dass du da mit CAN mindestens 
4 oder 5 Monate brauchst bis du das alles verstanden hast und das 
kannst.

von Ma B. (drumstick)


Lesenswert?

Die Projektaufgabe ist ja erst in Planung!

Mein Microcontroller (am liebsten einen aus der PIC-Familie(PIC18F..)) 
ist fest auf einem Print aufgelötet und in ein Gehäuse verbaut. Ich muss 
aber eine einfache Möglichkeit haben, Aenderungen an der Software 
vorzunehmen ohne den Controller ausbauen zumüssen.

Die Haussteuerung ist eine Bedienung (Taste Rechts, Taste Links, Stopp) 
und einen Anschluss um direkt meine geänderte Software auf den 
Microcontroller laden zu können. Wie der Anschluss aussieht, ist nicht 
ganz klar, darum frage ich ja euch Experten. Aber habe gelesen, dass man 
microcontroller über eine CAN-Schnittstelle programmieren kann.

Leider habe ich nicht ganz 4 bis 5 Monate Zeit! ;-)

Weiss jemand wie das funktioniert und was für hardware/software ich 
brauche????

Vielen Dank und Gruss

M. B.

von Düsendieb (Gast)


Lesenswert?

also war das CAN nur beispielhaft dahingeworfen.

Die Atmel Controller werden über die ISP Schnittstelle programmiert. Die 
braucht man nicht auszubauen.

Ist Dein Motor und die Elektronik schon fertig vorgegeben? Oder ist die 
Entwicklung die Aufgabe?


Axel

von Karl H. (kbuchegg)


Lesenswert?

M. B. schrieb:

> Mein Microcontroller (am liebsten einen aus der PIC-Familie(PIC18F..))
> ist fest auf einem Print aufgelötet und in ein Gehäuse verbaut. Ich muss
> aber eine einfache Möglichkeit haben, Aenderungen an der Software
> vorzunehmen ohne den Controller ausbauen zumüssen.

OK
Wenn du physisch nicht an den µC rankommst um einen normalen 
µC-Programmer anzustecken, dann wäre ein Bootloader der auf einer der 
vorhandenen Schnittstelle sitzt, eine Möglichkeit.

> ganz klar, darum frage ich ja euch Experten. Aber habe gelesen, dass man
> microcontroller über eine CAN-Schnittstelle programmieren kann.

Wenn man einen Bootloader hat, der sich über CAN ansprechen lässt ... 
warum nicht?

> Leider habe ich nicht ganz 4 bis 5 Monate Zeit! ;-)
>
> Weiss jemand wie das funktioniert und was für hardware/software ich
> brauche????

Tja. Ob es sowas fertig gibt?
Keine Ahnung

von Ma B. (drumstick)


Lesenswert?

Die Elektronik ist eigentlich fertig vorgegeben. Nur die Grösse des 
Prints ist fix und wenn man an der Grundelektronik Aenderungen vornehmen 
will kann man dies tun.

Also gehe ich der Idee Bootloader über CAN nach und versuche so eine 
Lösung zu finden.

von Karl H. (kbuchegg)


Lesenswert?

M. B. schrieb:
> Die Elektronik ist eigentlich fertig vorgegeben. Nur die Grösse des
> Prints ist fix und wenn man an der Grundelektronik Aenderungen vornehmen
> will kann man dies tun.

Huch.
Was denn nun?

Auch wenn du Schüler bist: Achte ein wenig mehr darauf, dass das was du 
scheibst auch Sinn ergibt.

von Ronald R. (Gast)


Lesenswert?

Wenn ich es richtig verstehe möchtest du folgendes haben:

Ein Gehäuse mit 3 Tasten, das auf einer Leiterplatte den PIC-Controller 
enthält. Dieser Controller wertet die Tasteneingaben aus und steuert 
dementsprechend die Motorelektronik an. Den PIC-Controller möchtest du 
zwecks SW-Update direkt mit einem PC ansprechen können, ohne ihn 
auszubauen. Dir ist auch egal (!) ob es CAN oder sonstetwas ist, 
hauptsache du kannst den Controller vom PC aus programmieren.

Kannst du uns noch näheres verraten wie der Motorelektronik angesteuert 
werden muss?

von Ma B. (drumstick)


Lesenswert?

Also,

Ich gebe mir Mühe präzieser zu werden. Entwicklung ist ja nie einfach. 
Die Elektronik kann modifiziert werden. Mit "fertig" meinte ich, dass es 
einen lauffähigen Lösungsansatz als Anschauungsmaterial hat.

Aber Roland hat das sehr gut verstanden.


Die Taster und der Schnittstellenanschluss ist auf einem Print (separate 
Speisung). Mittels Stromschiene 48V wird die Steuerelektronik im Motor 
und der Motor gespiesen.


Also mein Vorschlag währe einen CAN fähigen PIC 18fxx zu verwenden und 
mit dem dazugehörigen bootloader auszurüsten??

Weis jemand. ob es sowas gibt? Und Wo?

Gruss

M. B.

von Spess53 (Gast)


Lesenswert?

Hi

>Also mein Vorschlag währe einen CAN fähigen PIC 18fxx zu verwenden und
>mit dem dazugehörigen bootloader auszurüsten??

Hast du auch einen PC, der CAN kann?

MfG Spess

von Ronald R. (Gast)


Lesenswert?

Wenn du dir CAN nur für die Kommunikation zwischen PIC und PC ausgesucht 
hast, dann würde ich dir raten dafür einfach eine simple RS232 statt CAN 
zu nehmen. CAN ist, wie oben schon mehrfach erwähnt, sehr komplex.

von Ma B. (drumstick)


Lesenswert?

Vielen Dank für die Inputs!

Nein einen CAN fähigen PC habe ich nicht! Müsste ich also auch noch 
auftreiben.

Ja wenn ich mit CAN arbeite müsste ich dies natürlich noch lernen. Aber 
RS232 ist auch eine Variante.

Im Moment bin ich jetz auf der Suche nach dem Bootloader für den PIC.

Danke und Gruss

M. B.

von Ma B. (drumstick)


Lesenswert?

CAN hätte den Vorteil der Echtzeitübertragung! Und wenn ich Plötzlich 20 
solcher Antriebe im Haus habe könnte ich mit einem download alle 
gleichzeitig updaten?!

Gruss

von Ronald R. (Gast)


Lesenswert?

Du kannst z.B. das hier nachbauen:

http://www.sprut.de/electronic/soft/usboot/usboot.htm

von Ma B. (drumstick)


Lesenswert?

Und es gibt USB - CAN Adapter!!

von Franz (Gast)


Lesenswert?

Leute, führt den armen Schuler mal nicht auf die falsche Spur. Für 
dieses Projekt kann man CAN vergessen, weil zu aufwendig für jemanden 
der keine Erfahrung hat.

M.B. kaufe Dir einen Arduino + Motorsteuerproblem, dann hast Du Dein 
Problem schnell gelöst.

von Wegstaben V. (wegstabenverbuchsler)


Lesenswert?

> kaufe Dir einen Arduino + Motorsteuerproblem

wo kann man denn Motorsteuerproblem kaufen ??? Gibts da vielleicht auch 
noch andere Probleme, die man kaufen kann?

von holger (Gast)


Lesenswert?

>Gibts da vielleicht auch
>noch andere Probleme, die man kaufen kann?

Kannst meine haben. Wenn du genug zahlst hab ich sie nicht mehr;)

von Axel D. (axel_jeromin) Benutzerseite


Lesenswert?

@M.B. nimm eins der vielen Entwicklungsboards die überall aus dieser 
Seite angeboten werden, einen USB Programmer und lass zuerst mal eine 
LED blinken.

Dann melde Dich hier wieder und wir sehen weiter.


Axel

von xerox (Gast)


Lesenswert?

Hallo M.B.!

Könntest Du uns evtl. noch sagen mit welchen uC's Du schon Erfahrung 
hast? Was meinst Du mit Mikrocontroller Programmieren? Musst Du das 
komplette Programm auf den Controller schreiben oder soll es sowas ala 
"Taster 1 soll Motor 1 und 2 rechtsrum drehen, Taster 2 soll Motor 1 
linksrum drehen" werden?

mfg xerox

von Ma B. (drumstick)


Lesenswert?

Ja bis jetzt habe ich nur mit dem PIC16f88 gearbeitet und in Assembler 
programmiert. Die Aufgabe muss in c geschrieben werden.

Taste 1 = Motor links

Taste 2 = Motor rechts

Gruss

M. B.

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.