Hallo miteinander,
ich habe schon einiges hier im Forum gelesen, kann mir diese Frage aber
selbst nicht sicher beantworten, da ich auf dem Gebiet "Mikrocontroller"
kompletter Neuling bin. Deshalb frage ich hier nun einfach mal nach.
Geplant ist die Umsetzung der angehängten Schaltung (ja es ist eine
einfache Skizze, da ich nicht aus der Elektrotechnik-Branche komme und
mit komplexen Schaltungen nicht sonderlich vertraut bin ;-) ).
Meine Erklärung:
Der Prozessor soll ein Signal "AN" bekommen in Form eines fließenden
Stroms und sich daraufhin anschalten. Nun erfassen die beiden Sensoren
ihre Daten. Diese liegen in der Form vor, dass Strom fließt (1) oder
nicht (0). Zu Beginn fließt bei beiden Sensoren kein Strom (0,0). Der
Prozessor soll sich nun merken welcher der beiden Sensoren zuerst einen
Strom leitet (also 1,0 oder 0,1) und diese Zustände speichern (nennen
wir sie Zustand A = 1,0 und Zustand B = 0,1).
Nach einer Zeit von X Sekunden soll das System aus Energiespargründen
abgeschaltet werden und erst bei einem erneuten Signal "AN" oder beim
Druck des Tasters angehen.
Wird der Taster betätigt so soll er den gespeicherten Zustand A oder B
auswerten und entsprechend an eine rote oder grüne LED senden. Diese
soll dann leuchten.
Ich hoffe die Erklärung ist präzise genug :-)
Meine Anforderungen sind:
Das ganze sollte möglichst klein sein (SMD-Bauweise) und zudem sollte
der Prozessor nicht viel mehr können als das oben beschriebene
(günstig). Eine Energiesparende Version ist ebenfalls wünschenswert, da
der Betrieb mit Batterie geplant ist.
Meine Fragen:
Welcher Controller eignet sich für die beschriebenen Zwecke? Gerne auch
mit Links.
Was brauche ich noch alles um ihn in Betrieb nehmen zu können?
Sonstige Tipps und Tricks die ich beachten sollte?
Ich habe bereits Erfahrungen im Programmieren in C und C++, Assembler
könnte notfalls angelernt werden.
Vielen Dank schonmal für Eure Hilfe.
Grüße
Ruben
Ich Empfehle Dir einen PIC18 µC von Microchip. Der hat alles drin.
Siehe Artikel: PIC
Es gibt auch die "Nanowatt" Varianten die sehr wenig Strom benötigen.
Auf der Microchip Homepage gibt es viel Demo-Code und der Compiler/IDE
MPLAB ist kostenlos.
@Rubencz (Gast)
>Welcher Controller eignet sich für die beschriebenen Zwecke? Gerne auch>mit Links.
Jeder halbwegs aktuelle. AVR, PIC, MSP430, 8051 etc.
>Was brauche ich noch alles um ihn in Betrieb nehmen zu können?
Einen Programieradapter, siehe AVR ISP.
>Sonstige Tipps und Tricks die ich beachten sollte?Sleep Mode.
>Ich habe bereits Erfahrungen im Programmieren in C und C++, Assembler>könnte notfalls angelernt werden.
Naja, diese Seite hier ist halt sehr AVR-haltig, darum würde ich einen
AVR empfehlen. Aber alle anderen können das genauso gut.
Rubencz schrieb:> Meine Erklärung:> Der Prozessor soll ein Signal "AN" bekommen in Form eines fließenden> Stroms und sich daraufhin anschalten.
Heißt das "AN" ist die Versorgungsspannung?
> Nun erfassen die beiden Sensoren> ihre Daten. Diese liegen in der Form vor, dass Strom fließt (1) oder> nicht (0). Zu Beginn fließt bei beiden Sensoren kein Strom (0,0). Der> Prozessor soll sich nun merken welcher der beiden Sensoren zuerst einen> Strom leitet (also 1,0 oder 0,1) und diese Zustände speichern (nennen> wir sie Zustand A = 1,0 und Zustand B = 0,1).
Strom oder Spannung? Stromsignal kann kein einfacher µC. Müsste man erst
in ein Spannungssignal umwandeln
> Nach einer Zeit von X Sekunden soll das System aus Energiespargründen> abgeschaltet werden und erst bei einem erneuten Signal "AN" oder beim> Druck des Tasters angehen.
Wenn die Messung eher selten ist, kann man die Schaltung komplett
abschalten. Ansonsten Sleep mode. Was für Sensoren sind das? Die
brauchen meistens mehr Strom als der µC. Sollte man vielleicht auch
schaltbar machen.
> Wird der Taster betätigt so soll er den gespeicherten Zustand A oder B> auswerten und entsprechend an eine rote oder grüne LED senden. Diese> soll dann leuchten.
Soll sich der µC mehrere Zustände merken, oder nur den letzten. Wenns
nur wenige Werte sind, kann man die im EEPROM speichern und den µC
danach komplett abschalten.
> Meine Anforderungen sind:> Das ganze sollte möglichst klein sein (SMD-Bauweise) und zudem sollte> der Prozessor nicht viel mehr können als das oben beschriebene> (günstig). Eine Energiesparende Version ist ebenfalls wünschenswert, da> der Betrieb mit Batterie geplant ist.
Ich arbeite sowohl mit Pic als auch mit AVR. Letzere sind für Anfänger
einfacher. Insbesondere das neueste Atmel Studio macht das Programmieren
relativ einfach dank Syntaxvervollständigung.
ATmel Attiny25. 5x6mm groß. Aktivbetrieb 300µA im Sleep modus 10µA.
Mit 3 AA-Akkus läuft das rund 4 Jahre lang. Der µC kostet je nach
Stückzahl 0,50€-2€
> Sonstige Tipps und Tricks die ich beachten sollte?
Keine 3.Anbieter programmiertools kaufen!
.. wie sollen wir uns "in Form eines fließenden Stroms" für den
AN-Eingang vorstellen und was/wie/wo tun die Sensoren?
Grüße leo
PS.: Ansonsten würde ich mit einem beliebigen µP mit wenigstens 6 IOs,
einem Steckbrett, Minimodul, zur Not auch ard... anfangen und erst im
zweiten Schritt auf Kleinstheit optimieren.
Erstmal vielen Dank für die ganzen Antworten in der kurzen Zeit. Echt
super :-)
Die verwendeten Sensoren sind bisher noch einfache quecksilberfreie
Neigungswinkelschalter. Sie dienen letztendlich dazu eine Drehrichtung
zu bestimmen (links oder rechts herum). Falls Ihr bessere (vor allem
kompaktere) Sensoren parat habt, ich bin gerne für Vorschläge offen. Ich
hatte mich nur für diese Sensoren entschieden, da sie ein einfaches
Wirkprinzip haben. Sie liefern quasi nur das Signal "Strom" oder "kein
Strom". Dies erschien mir relativ einfach für eine spätere Auswertung.
Das "AN" ersetzt mir quasi einen mechanischen "An/Aus" Schalter.
Realisiert werden soll das ganze mittels Reed-Schalter.
Danke nochmals für die schnellen Antworten. Echt top. :-)
Zu den angesprochenen Controllern werde ich mich mal einlesen. So habe
ich immerhin schon eine richtige Richtung…wie gesagt, bin noch blutiger
Anfänger.
Grüße
Ruben
Wenn du in C fit bist, guck dir mal die STM32 Discovery Boards an. Haben
einen Programmieradapter drauf und lassen sich mit den Bibliotheken von
ST recht einfach bedienen, insb. mit der Entwicklungsumgebung Coocox und
den Beispielen von
http://mikrocontroller.bplaced.net/wordpress/?page_id=744
Liebe Grüße Jan
Jan Berg schrieb:> STM32 Discovery Boards
Warum nicht gleiche einen i7 mit 8 Kernen?
Ich würde das ganze mit einem kleinen 8bit PIC lösen. MPLAB X IDE und
den XC8 Compiler kann man sich gratis bei Microchip downlaoden. Als
Programmer würde ich das PICkit3 empfehlen, mit diesem kannst du so gut
wie jeden PIC programmieren und auch debuggen.
Bitte nicht schon wieder Flamewar.
Das PicKit kostet z.B. Faktor drei und der ST ist einfacher zu
Programmieren mit den Libraries als ein Pic ohne. STM32L0 sind auch sehr
energiesparend und klein zu kriegen.
Jan Berg schrieb:> Das PicKit kostet z.B. Faktor drei
Dafür hat er dann einen tollen Programmer/Debugger.
> ST ist einfacher zu Programmieren mit den Libraries als ein Pic ohne.
Für PICs gibt es auch Libraries... Sind z.B. beim XC8 dabei.
Ich würde sagen das kommt auf den Arbeitsaufwand an den du betreiben
möchtest.
Mehr Aufwand wäre es mit dem stm32f429 discovery board.
Hat für 27€ alles drauf was man brauch ( rote und grüne led, Taster,
neigungssensor/gyro, wenn einem langweilig ist auch ein touchdisplay)
Einarbeitungszeit ist allerdings größer, da auch komplizierter. Doch für
die meisten Bauteile gibt es fertige libs wie bei
Mikrocontroller.bplaced.net
Einfacher geht es mit "kleinen" Mikrocontrollern wie den attiny.
Zumindest wenn man von 0 anfängt. (Da diese weniger
Konfigurationsmöglichkeiten haben)
kopfkratz
Tja nun da gibt es 8bitter, 16bitter, 32bitter und sogar 64bitter als
µCs.
Wenn es wie genannt nur darum geht festzustellen ob ein Zustand erreicht
worden ist reicht jeder 8bitter aus.
Nur wenn man sich dann ansieht das man z.B. einen 32bitter der keinen
Programmer braucht für 6 Euro bekommt relativiert sich das schnell.
Denn Programmer plus 8bitter µC kosten idR auch 6 Euro, 5 für Programmer
und 1 für den µC.
Geht es um Stückzahlen ist natürlich die Variante mit kleinem µC
vorzuziehen.
Aber hier denke ich das es keinen Unterschied macht ob 8bit AVR/PIC oder
32bit ARM ...
Also für das Bildchen da am Anfang und wenn die Sensoren einfache
Schalter sind reicht hierfür auch eine diskrete Schaltung.
Ein paar Logikgatter, Schmitttrigger und Ausgangstreiber.
Ein µC ( auch der kleinste 8 Bitter) an der Stelle ist total
übertrieben.
> Ein paar Logikgatter, Schmitttrigger
Also mehr als ein Chip. Mit Mikrocontroller hat man nur einen Chip. Wer
die Schaltung kompakt haben will, mag daher den µC bevorzugen.
Danke für eure zahlreichen Antworten. So wie es aussieht tendiere ich zu
einem µC mit 8Bit. Wahrscheinlich ein PIC samt PICkit3. Erscheint mir so
als Anfängervariante ganz i.O. und in Summe komme ich da nicht über
40€-50€. Das ist ok :)
Falls ich weitere Fragen habe werde ich mich melden. Ihr habt mir
jedenfalls schonmal deutlich weitergeholfen.
Vielen Dank
Grüße
Ruben
Rubencz schrieb:> Danke für eure zahlreichen Antworten. So wie es aussieht tendiere ich zu> einem µC mit 8Bit. Wahrscheinlich ein PIC samt PICkit3. Erscheint mir so> als Anfängervariante ganz i.O. und in Summe komme ich da nicht über> 40€-50€. Das ist ok :)>> Falls ich weitere Fragen habe werde ich mich melden. Ihr habt mir> jedenfalls schonmal deutlich weitergeholfen.>> Vielen Dank>> Grüße> Ruben
Beim AVR komme ich auf ca. 6€ "Einstiegskosten".
2,50€ AVR ISP bei Ebay
1,50€ Mini Steckbrett bei eBay
1,00€ AVR ATTiny
1,00€ Kleinkrams
El Jefe schrieb:> Beim AVR komme ich auf ca. 6€ "Einstiegskosten".> 2,50€ AVR ISP bei Ebay> 1,50€ Mini Steckbrett bei eBay> 1,00€ AVR ATTiny> 1,00€ Kleinkrams
Hirn einschalten, Lernen, ausprobieren: Unbezahlbar.
Nur das will niemand. Bei den meisten reichts dann grade zu einem
Arduino und selbst dafür sind se noch zu doof.
El Jefe schrieb:> AVR ISP
Ein Debugger scheint mir für den Anfang ganz nützlich, und wenn wir
schon nachgebaute Tools kaufen, kann man auch einen PICkit3 Nachbau für
<15€ kaufen.
Nik schrieb:> El Jefe schrieb:>> AVR ISP> Ein Debugger scheint mir für den Anfang ganz nützlich, und wenn wir> schon nachgebaute Tools kaufen, kann man auch einen PICkit3 Nachbau für> <15€ kaufen.
Trugschluss. Ein Anfänger braucht erstmal keinen Debugger. Und auch
keinen Simulator. Die machen da mehr Probleme als sie lösen. Das sind
beides Tools für Fortgeschrittene die wissen was sie tun.
cyblord ---- schrieb:> Trugschluss. Ein Anfänger braucht erstmal keinen Debugger. Und auch> keinen Simulator. Die machen da mehr Probleme als sie lösen.
Da habe ich als ich angefangen habe andere Erfahrungen gemacht und
sollte es so sein wie du geschrieben hast: Man muss den Debugger ja
nicht nutze.
> Das sind beides Tools für Fortgeschrittene die wissen was sie tun.
Auch gut, dann kann er mit dem Pk3 viel anfangen wenn er fortgeschritten
ist.
cyblord ---- schrieb:> Ein Anfänger braucht erstmal keinen Debugger. Und auch> keinen Simulator. Die machen da mehr Probleme als sie lösen.
Das verstehe ich jetzt nicht. Ich finde so einen Debugger wie den
Pickit3 eigentlich auch für Anfänger recht praktisch.
Da kann man auch mal leicht Schritt für Schritt durchs Programm um z.B.
fehlerhafte Abbruchbedinungen von Schleifen zu finden oder mal schauen
ob das Ausgangsregister der Ports auch angesprochen wird oder der Fehler
der nicht leuchtenden LED am falschen Tris Register liegt.