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 ?
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.
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.
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.
> 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?
> 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
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.
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.
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.
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.