Hallo, bin in diesen Thema totaler anfänger. Kenne mich aber mit Ic Schaltungen aus. Da gibt es ein paar Lernpakete mit verschieden Progranmiersprachen, ..., Ich beschäftige mich gerne mit Led, RGB-Led. Was ich vor habe ? Ich will z.B. 10 oder mehr Led ansteuern. Will jede Led einzeln programmieren z.B. 1. Blitzt 2. Blinkt 3. Dimmt 4. RGB LED . . Will die Zeit, Helligkeit und Geschwindigkeit je Led programmieren können. Wenn ich einen Taster drücke, soll ein anderes Programm laufen, das ich programmiert habe. Welche Programmsprache soll es werden, welche Chips ? Würde gerne eine Anleitung in Deutsch haben und das es unter Windows 7 geht. Was bräuchte ich dafür ?
Halte dich doch an die Infos Artikel Tutorials hier. Erfüllt alle deine Bedürfnisse.
Atmel Mega 88 nehmen und das hier lesen: http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial http://www.mikrocontroller.net/articles/Absolute_Beginner-AVR_Steckbrettprojekte und in C Programmieren
Mario schrieb: > Welche Programmsprache soll es werden ... Ja wenn du nich weißt was du machen willst?! Mario schrieb: >..., welche Chips ? Du kennst dich also mit IC-Schaltungen aus und verwendest das Wort "Chips". Ich glaube du hast keine Ahnung.... Es gibt genügend Material im Internet mit dem man sich über Einsteiger-Boards, Einsteiger-Controller bzw. Einsteiger-Projekte informieren kann. Anscheinend hast du noch nie etwas in diese Richtung gemacht. Dein aktuelles Ziel sollte sein, eine LED mit einem Timer zb. (variabel) blinken zu lassen. Dabei solltest du in der Lage sein, den Code so zu schreiben, dass man jegliche Parameter schnell und einfach anpassen kann ohne sich durch den ganzen Code zu wühlen. Dann gehts weiter über PWM, (evtl. "blitzen") zu der Auswahl des aktuellen Modi über Tastendruck. Hast du dir genügend Gedanken gemacht? Mal so als kurzen Gewissentest: Du willst jede Led einzeln mit einem Modi belegen und mit EINER Taste diese Modi durchwechseln? Dir ist schon bewusst, dass dazu ein sehr komplexe Auswertung des Tastendrucks notwendig wäre? Zb. lange/kurz drücken, x-mal drücken usw. um zwischen den LED zu unterscheiden.... Was erwartest du? Eine Anleitung für dein Problem? Soetwas gibt es nicht. Das einzige was das Internet hergibt sind fertige Beispiele mit Codeschnipseln und Tutorials. Wenn du mit deren Hilfe nicht in angemessener Zeit in der Lage bist selbst etwas zu entwerfen, dann such dir lieber eine anderes Hobby.
Hallo Düsendieb, deine zweite Link empfehlung war mir sehr hilfreich. Danke
Moin moin, also ich habe folgendes Vorhaben: Ich möchte eine Seekarte auf einen dieser typischen rechteckigen Ikea Wohnzimmertische kleben. Grüne und Rote Fahrwassertonnen, Leuchttürme etc. kleine Löcher bohren und LEDs reinbauen. Die Tische sind Hohl und mit Wellpappe gefüllt, dort soll die Kabellage / Technik liegen. Nun hab ich nicht den Hauch einer Ahnung wie und wo ich die LEDs anklemmen muss, wie ich sie Programmier. Ein gewisses Handwerkliches Geschick ist vorhanden. Ich denke das ich eine Platine brauche und jede LED per Kabel anlöten oder anstecken muss. Und irgendwas, dass die Platine kontrolliert. Geht so etwas mit einem Raspberry Pi? Wie gesagt, ich hab ne tolle Idee, nen Plan von der Umsetzung, aber wie ich eine LED dazu bring innerhalb von 6 Sekunden 1 mal Lang und 4 mal kurz zu blinken, dafür wäre ein schubs in die richtige Richtung oder ein Link super. Beste Dank im Voraus, Robert
Hallo Seamast3r Einen 7 Jahre alten Thread dafür auszugraben ist nicht unbedingt empfehlenswert ;) Wie auch immer: Ein RasPi ist mit Kanonen auf Spatzen geschossen! Für absolute Anfänger sind "Arduino" empfehlenswert, das sind fertig aufgebaute Boards mit Mikrocontrollern drauf. Du bist die eine Millionste Person die so etwas vor hat, deswegen gibt es dazu auch eine grosse Community und viel Anleitungen :) Viel Spass!
Wow, danke für den Schubs. Und so schnell. Bei Wikipedia steht praktischerweise schon fast das fertige Programm für mein Vorhaben. Brauch ich zusätzliche Hardware neben dem Arduino? Es werden Locker 150 LEDs verbaut werden um die Elbmündung komplett zu Illuminieren. Danke dir 1000 mal.
Da der Arduino (bzw. der AVR) nicht annähernd soviele Pins hat, wie du LEDs ansteuern möchtest... ja du brauchst zusätzliche Hardware. Eine Variante ist die Verwendung Schieberegistern ( hier gibt es zumindest mal eine Beschreibung der Idee: https://www.makerblog.at/2015/01/das-schieberegister-74hc595-am-arduino/) allerdings würde ich hier LEDs mit eigener Ansteuerlogik wie WS2812b verwenden. Die sind in China sehr günstig zu bekommen (z.B. bei aliexpress) als Einzel-LED oder als Bänder. Vorteil: Bibliothek zur Ansteuerung vorhanden, wenig HW, keine zusätzliche Platine notwendig für die Schaltung, RGB (vermutlich die günstige Lösung). Es wird nur 1 Pin des Arduino belegt, da die Ansteuerung über ein serielles Protokoll erfolgt und die LEDs an einem Bus (sequentiell hintereinander) hängen. Beispiel für die Verwendung der WS2812 im Zusammenhang mit Arduinos findest du zu Hauf im Netz.
Super, Danke. Werd mich nu einlesen. Arduino, Schieberegister, WS2812b... alles böhmische Dörfer für mich. Aber ich hab nen Ansatz und Zeit ohne Ende. Besten Dank Rob :-)
Seamast3r schrieb: > Wow, > > danke für den Schubs. Und so schnell. Kein Problem :) Die Frage schlägt hier auch fast jeden Tag auf ;) Ob du zusätzliche Hardware brauchst hängt auch noch davon ab, ob da alle LEDs einzeln ansteuern möchtest oder alle gleich oder halt in Segmenten. Ansonsten ist das Stichwort WS2812 auf jeden Fall nicht verkehrt!
Seamast3r schrieb: > aber wie ich eine LED dazu bring innerhalb von 6 Sekunden 1 mal Lang und > 4 mal kurz zu blinken In dem du sie programmgesteuert ein und ausschaltest. Am einfachsten lassen sich 150 LEDs bedienen in dem man WS2812 hintereinanderschaltet, die können auch in jeder Farbe leuchten. Wenn dir die Bauform nicht gefällt, schalte 10 TLC5923 hintereinander und dort normale LEDs dran, das spart wenigstens 134 Vorwiderstände. Als Programm auf einem Arduino wird man die Blinkmuster in einer Tabelle ablegen und die LEDs entsprechend schalten, eventuell mehrere Tabellen ke nach Zykluszeit.
Freeman schrieb: > Ob du zusätzliche Hardware brauchst hängt auch noch davon ab, ob da alle > LEDs einzeln ansteuern möchtest oder alle gleich oder halt in Segmenten die LEDs sollen alle verschieden blinken. Sie unterscheiden sich in vier Farben, Rot, Grün, Weiß, Gelb und haben alle verschiedene "Kennungen" also Blinkmuster sozusagen. MaWin schrieb: > Als Programm auf einem Arduino wird man die Blinkmuster in einer Tabelle > ablegen und die LEDs entsprechend schalten, eventuell mehrere Tabellen > ke nach Zykluszeit. Vermutlich werden sich einige LEDs einen Zyklus teilen sodass ich da ein paar programmzeilen / Widerstände sparen kann. MaWin schrieb: > Wenn dir die Bauform nicht gefällt, schalte 10 TLC5923 hintereinander > und dort normale LEDs dran, das spart wenigstens 134 Vorwiderstände. Ich muss erstmal rausfinden was vorwiderstände sind und wofür ich die brauch :-P Lese mich gerade ein und bekomme langsam einen Plan. Aber an sich eine geile Sache um überhaupt eine Vorstellung von Mikroelektronik zu bekommen und sowas selbst zu bauen.
Seamast3r schrieb: > Es werden Locker 150 > LEDs verbaut werden um die Elbmündung komplett zu Illuminieren. Arduino (einfacher) http://www.arduino-tutorial.de/viele-leds-mit-arduino-steuern-ws2812/ oder STM siehe wordclock um 100 WS2812B LEDs oder wordclock24h um 400 WS2812B LEDs. Beitrag "Re: Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?" bei 150 LEDs finde ich Arduino einfacher, mit nano328p 5ms ein Update aller LEDs. RAM Bedarf für die Tabelle so 500 Byte von den vorhandenen 2K Byte Einzel LEDs bedrahtet gibt es ja https://www.led-genial.de/LED-PL9823-5mm-mit-integriertem-WS2811-Controller-10-Stueck https://www.led-genial.de/LED-PL9823-8mm-mit-integriertem-WS2811-Controller-10-Stueck https://picclick.de/APA106-5mm-8mm-RGB-LED-mit-integriertem-321929298215.html https://www.espruino.com/WS2811
:
Bearbeitet durch User
Wenn jede LED ein eigenes Blinkmuster haben soll, diese aber alle gleichzeitig ablaufen sollen, dann brauchst du wohl ein Multitasking fähiges System. Auf kleinen Mikrocontrollern macht man das üblicherweise mit Zustandsautomaten (Endliche Automaten, State Machines). Kann man in jeder Programmiersprache realisieren, ist aber nichts für die ersten Anfänge. Die meisten Mikrocontroller werden in C oder C++ programmiert. Basic (Bascom) ist auch noch relativ weit verbreitet. Etwas seltener kommt Assembler zum Einsatz. Ich empfehle Dir, zunächst die Programiersprache C auf einem PC zu lernen - die Grundlagen genügen. Danach versuchst du dich an einem 8bit AVR Mikrocontroller, eventuell anhand dieser Anleitung: http://stefanfrings.de/mikrocontroller_buch/index.html Die Arduino kompatiblen Boards aus Asien sind derzeit sehr preisgünstig und können direkt über ihren USB Anschluss befüllt werden. Suche bei Aliexpress oder Amazon nach "Arduino Nano CH340". Mit Hilfe von Schieberegistern oder I²C Portexpandern wirst du dessen Ausgänge erweitern. Wenn du mit den ersten Versuchen durch bist solltest du auf jeden Fall einen Blick in die Artikelsammlung (https://www.mikrocontroller.net/articles/Hauptseite) werfen. Das ist eine wahre Fundgrube. Sie ist ein Grund, warum ich ausgerechnet 8bit AVR Mikrocontroller empfehle.
Stefanus F. schrieb: > Ich empfehle Dir, zunächst die Programiersprache C auf einem PC zu > lernen - die Grundlagen genügen. ich kenne aber nur LCC32 man arbeitet sich schnell ein einfach und leicht mit LCC32 oder 64 https://en.wikipedia.org/wiki/LCC_(compiler) http://www.bei-ekke.de/htmltidy/mfischer/lcc32-index.html https://lcc-win32.de.uptodown.com/windows https://www.heise.de/download/product/lcc-win32-1059 http://lcc-win64.software.informer.com/4.0/
> ich kenne aber nur LCC32 Ich habe dem Seamast3r empfohlen, C zu lernen. Für ihn spielt vermutlich keine Rolle, welche Sprache du bereits kennt. Wie dem auch sei, würde ich Neulingen eher zum gcc raten, weil die kostenlosen Toolkits für AVR und ARM Controller fast alle auf gcc basieren. Wichtiger als der konkrete Compiler ist allerdings, die Sprache C zu lernen. In welcher Variante ist zunächst wurscht.
Stefanus F. schrieb: > Für ihn spielt vermutlich > keine Rolle, welche Sprache du bereits kennt. dito, ich kann nur empfehlen was ich kenne, für ihn spielts wohl auch keine Rolle was du empfiehlst? Ist das nun die Retourekutsche für die Korrektur deines Kupferleitwert 44?
:
Bearbeitet durch User
> ich kann nur empfehlen was ich kenne, Ach so war das gemeint. Ich dachte du wolltest dich einmischen und so tun als seist du der Seamast3r, das hat mich verwirrt. > Ist das nun die Retourekutsche für die Korrektur > deines Kupferleitwert 44? Nein, dafür bin ich doch dankbar. Ich habe das PDF auch direkt korrigiert.
Stefanus F. schrieb: > Ach so war das gemeint. na dann war es ein Missverständnis, alles klar! Stefanus F. schrieb: > Wichtiger als der konkrete Compiler ist allerdings, die Sprache C zu > lernen. In welcher Variante ist zunächst wurscht. möglichst kostenlos und leicht zu arbeiten ich würde ja sogar QC für DOS in einem CMD Fenster sagen, finde aber nicht richtige Downloadlinks die mir nicht suspeckt sind. Ich nutze sogar unter Arduino immer noch meine C-Tools seit 1990 in der IDE Das ist das schöne an C
:
Bearbeitet durch User
Von mir auch noch eine Empfehlung: Teile Dein Vorhaben in zwei Phasen auf: 1.) Erst mal nur eine handvoll LEDs direkt ansteuern, nicht gleich 150. Wie schon andere geschrieben haben, hat so ein Arduino nicht 150 Pins um jede LED einzeln direkt anzusteuern. Aber eine LED einzeln anzusteuern ist die einfachste und beste Übung, die man als Einstieg machen kann. Überspringe diesen Schritt nicht. 2.) Für das Projekt tatsächlich ca 150 LEDs anzusprechen, würde ich auch direkt diese WS2812B Dinger empfehlen. Allerdings setzt das die Komplexität des Prjokets ein bis zwei Komplexitätsstufen rauf. Hier geht es nämlich plötzlich darum ein vorgegebenes Timing (die Schnittstelle zum WS2812B) penibel einzuhalten. Selbst bei Verwendung vorgefertigter Bibliotheken kann es auch hier immer noch Stolpersteine geben, z.B. die Konfiguration des Prozessortakts. 3.) 150 RGB LEDs können schon ganz ordentlich Strom ziehen. Damit kannst Du ein Standard 5V Handyladenetzteil in die Knie zwingen. Ein Teil Deines Projekts muss daher auch sein die benötigte Leistung zu berechnen und ein entsprechedes Netzteil zu besorgen.
Thomas M. schrieb: > Selbst bei Verwendung vorgefertigter > Bibliotheken kann es auch hier immer noch Stolpersteine geben, z.B. die > Konfiguration des Prozessortakts. dazu gibt es die fastLED LIB für Arduino, das macht es einfach! Thomas M. schrieb: > 150 RGB LEDs können schon ganz ordentlich Strom ziehen. Damit kannst > Du ein Standard 5V Handyladenetzteil Handylader ist nicht zu empfehlen, für meine wordclock mit 114 WS LEDs brauche ich unter voller Hellligkeit in weiss aller LEDs schon 4A also das Maximum was es als 5V Steckernetzteile SNT schon gibt, rechnen wir mal 20mA x 3 Grundfarben x 150 LEDs brauchen maximal 9A (meine Wordclock 6,8A aber alle leuchten bei mir nicht in Spitzenweiss, deswegen klappt es) Um die 9A bei 150 LEDs in den Griff zu bekommen bieten sich ja höhere Spannungen an 5V x 9A = 45W, mit einem 12V Steckernetzteil z.B. kann man den Strom mit dünneren Leitungen besser in den Griff bekommen https://elektronik-video.de/lcd-monitor-netzteile/1447/troy-netzteil-adapter-fuer-lcd/tft-12v-4a-5-5-2-5mm?gclid=CjwKCAjwwdTbBRAIEiwAYQf_E3LIFjilcvV6QAVKUR6uUHbX0gKagj8G5c7cchZageNAQOxyK9Fb6RoCtUEQAvD_BwE oder mit einem 24V Netzteil Die LED Kette speist man dann mit Stepdown Module zu 5V alle 36 LEDs https://www.ebay.de/itm/Mini-DC-6-5-28V-to-DC-5V-MP1584-3A-DC-DC-Step-down-BUCK-Module/152877469742?hash=item239835102e:g:3TwAAOSwWvxZcPEu ohne Poti ist leichter und sicherer! die gibt es auch adjustabel einstellbar mit Poti aber Potis sind unsicher ich hatte mir noch die Mühe gemacht einige Dutzend zu vermessen und das Poti zu ersetzen zu Festwiderstand auf 5V, leichter ist es die schon fertig zu kaufen, die 3A sind geschönt, aber 2A geht deswegen alle 36 LEDs einen Regler.
:
Bearbeitet durch User
Hallo Robert (Seamast3r (Gast)), im Arduinoforum gibt es einen Faden, wo jemand 6 Leuchttürme der Nordseeküste (repräsentiert durch LEDs auf einer Landkarte), mit der originalen Blinkfrequenz darstellen will. https://forum.arduino.cc/index.php?topic=146086.0 Möglicherweise findest Du dort ja Anregungen. Grüße, Helmut_HDK
Seamast3r schrieb: > Freeman schrieb: >> Ob du zusätzliche Hardware brauchst hängt auch noch davon ab, ob da alle >> LEDs einzeln ansteuern möchtest oder alle gleich oder halt in Segmenten > > die LEDs sollen alle verschieden blinken. Sie unterscheiden sich in vier > Farben, Rot, Grün, Weiß, Gelb und haben alle verschiedene "Kennungen" > also Blinkmuster sozusagen. > > Bei den Tonnen? DU willst die Fahrwassertonnen sicher nicht individuell blinken lassen. > Vermutlich werden sich einige LEDs einen Zyklus teilen sodass ich da ein > paar programmzeilen / Widerstände sparen kann. > > Ja. Vielleicht möchtest Du Dir noch überlegen, ob die Leuchttürme einen rotierenden Lichtkegel abstrahlen sollen.
> Vielleicht möchtest Du Dir noch überlegen, ob die Leuchttürme einen > rotierenden Lichtkegel abstrahlen sollen. Das habe ich mal zuerst mit 4 LEDs, dann mit 8 LEDs versucht, sah beides Kacke aus. Das geht wohl nur schön mit einem rotierenden Spiegel.
Percy N. schrieb: > Bei den Tonnen? DU willst die Fahrwassertonnen sicher nicht individuell > blinken lassen. Doch doch, die Fahrwassertonnen sollen alle individuell blinken, so wie sie es in der Wirklichkeit auch tun. Stefanus F. schrieb: > ie meisten Mikrocontroller werden in C oder C++ programmiert. Basic > (Bascom) ist auch noch relativ weit verbreitet. Meint ihr das Uralt Basic? 10 CLR 20 Print "hello world" 30 End oder so ähnlich? das hab ich sogar mal gelernt. Stefanus F. schrieb: > Das habe ich mal zuerst mit 4 LEDs, dann mit 8 LEDs versucht, sah beides > Kacke aus. Das geht wohl nur schön mit einem rotierenden Spiegel. Denke auch das rotierende Kegel extrem aufwendig sind, und dann bleibt fraglich ob dieses auf einem Tisch überhaupt wirkt bzw. einen WoW-Effekt hervorbringt... Helmut_HDK schrieb: > im Arduinoforum gibt es einen Faden, wo jemand 6 Leuchttürme der > Nordseeküste (repräsentiert durch LEDs auf einer Landkarte), mit der > originalen Blinkfrequenz darstellen will. > > https://forum.arduino.cc/index.php?topic=146086.0 tolle Sache. Schau ich mir mal (weiter) an.
> Meint ihr das Uralt Basic?
Das wurde schon weiter entwickelt. Vor allem brauchst du diese
behämmerten Zeilennummern nicht mehr.
Seamast3r schrieb: >> Das habe ich mal zuerst mit 4 LEDs, dann mit 8 LEDs versucht, sah beides >> Kacke aus. Das geht wohl nur schön mit einem rotierenden Spiegel. > > Denke auch das rotierende Kegel extrem aufwendig sind, und dann bleibt > fraglich ob dieses auf einem Tisch überhaupt wirkt bzw. einen WoW-Effekt > hervorbringt... Der Betrachter in einiger Entfernung sieht von einer Rundumleuchte eh nur einen Lichtpunkt mit wechselnder Intensität. Da ist der Effekt schon ganz hübsch, wenn statt einfachem Blinken die Lichtstärke entsprechend moduliert wird: mehr oder weniger langsames Auf- und Abblenden mit einem hellen Blitz in der Mitte erzeugt eher die Illusion einer Lampe mit rotierendem Spiegel oder Linse, als ein paar LEDs im Kreis mit Lauflicht-Steuerung.
:
Bearbeitet durch User
Stefanus F. schrieb: >> Vielleicht möchtest Du Dir noch überlegen, ob die Leuchttürme einen >> rotierenden Lichtkegel abstrahlen sollen. > > Das habe ich mal zuerst mit 4 LEDs, dann mit 8 LEDs versucht, sah beides > Kacke aus. Das geht wohl nur schön mit einem rotierenden Spiegel. also es gibt ja die super kleinen WS2812b Stripes mit 144LEDs/m https://www.ebay.de/itm/WS2812B-RGB-LED-Strip-Light-1M-144-60-5M-150-300-SMD-Individual-Addressable-5V/273295069670?hash=item3fa1a7d1e6:m:mV2H9R_ES32gi25tGUFCCFw davon könnte man einige 3/4/5 zu einem Ring formen und in die Kette einschleusen. Somit wären dimmen und Rundumlicht möglich. Je nach Software stelle ich mir das brauchbar vor.
Stefanus F. schrieb: >> Vielleicht möchtest Du Dir noch überlegen, ob die Leuchttürme einen >> rotierenden Lichtkegel abstrahlen sollen. > > Das habe ich mal zuerst mit 4 LEDs, dann mit 8 LEDs versucht, sah beides > Kacke aus. Das geht wohl nur schön mit einem rotierenden Spiegel. Hm. Es gibt doch diese hübschen kleinen Lichtleiter, mit denen der Lichtstrom vo und der LED auf der Platine zur Frontplatte geleitet werden soll, oder schlicht die Abstrahlrichtung umgelenkt. Die Teile könnte man auch rotieren. Drehspiegel sieht natürlich echter aus, aber dann braucht man eigentlich auch einen Fresnelring.
Percy N. schrieb: > Bei den Tonnen? DU willst die Fahrwassertonnen sicher nicht individuell > blinken lassen. Du mußt. Jede Tonne in Sichtweite hat eine eindeutige Kennung in Form ihres Blinkmusters, damit der Seefahrer sie von einander unterscheiden kann.
Sheeva P. schrieb: > Percy N. schrieb: >> Bei den Tonnen? DU willst die Fahrwassertonnen sicher nicht individuell >> blinken lassen. > > Du mußt. Jede Tonne in Sichtweite hat eine eindeutige Kennung in Form > ihres Blinkmusters, damit der Seefahrer sie von einander unterscheiden > kann. Das ist klar. Nur kann man vermutlich auch bei bester Sicht nicht alle Tonnen zwischen Cuxhaven und Curslack gleichzeitig sehen, so dass man da etwas Freiheit hätte. Soll es nach Eintrag in der Seekarte gehen? Sportlich!
Percy N. schrieb: > Sheeva P. schrieb: >> Du mußt. Jede Tonne in Sichtweite hat eine eindeutige Kennung in Form >> ihres Blinkmusters, damit der Seefahrer sie von einander unterscheiden >> kann. > > Das ist klar. Nur kann man vermutlich auch bei bester Sicht nicht alle > Tonnen zwischen Cuxhaven und Curslack gleichzeitig sehen, so dass man da > etwas Freiheit hätte. Deswegen schrieb ich "in Sichtweite". ;-) > Soll es nach Eintrag in der Seekarte gehen? Sportlich! Wenn ich den TO richtig verstanden habe, ist genau das die Idee.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.