Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
Hallo liebe leute.
Ich bin neu hier und leider ist der Umgang mit Labview auch neu für mich.
ich muss im Zuge meiner Diplomarbeit eine Lichtquelle mit 36 Verschiedenen LEDs ansteuern und diese einzelln dimmen.
Ich bin nun im Besitz der nötigen Hardware und diese Funktionier mit der Software die mir die netten Bastler mitgeliefert haben.
Da diese deutlich mehr Ahnung haben als ich haben sie mir zu dem kleinen Programm noch ein excel file mitgeschickt das alle daten enthalten soll die nötig sind um meine hardware anzusteuern.
Leider versteh ich nur bahnhof. Ich kann mittlerweile mit dem USB Seriell port kommunizieren(über ein labview beispielprogramm zu RS232)
Die dimmung wird über den strom geregelt. Welche microcontroller verbaut wurden weiss ih nich.
mir wurde allerdings wie gesagt versichert dass das excelfile ausreichen sollte um eine ansteuerung via labview zu realisieren.
Mein Problem ist nun, soweit ich überhaupt das im mom mit sicherheit sagen kann, das ich nihct weiss was für befehlssätze ich an die serielle schnittstelle senden muss.
für hilfe jegweder art wäre ich überaus dankbar. wenn mir zB jemad sagen könnte ob die infos im excel file wirklich ausreichen.
meine zeit wird dummerweise etwas knapp langsam
du müstest erstmal eine ser. SS initialisieren, wobei gemäß deiner Exceldatei die Baudrate auf 38400 zu setzen ist. Die anderen Einstellparameter entsprechen dem LabView-Standard (unverdrahtet)
Den TO sollte man allerdings auf 1-2 s setzen, anstatt auf 10, wie im Standard.
Dann kannst du gemäß deiner Befehlsliste in der Exceldatei entsprechende Kommandos zusammenbauen, im einfachsten Fall erstmal aus einem Stringelement, das auf hex. gestellt ist und solltest danach die im file angegebene Antwort zurückbekommen.
Bei "VISA Configure Serial Port" nicht alles auf Standard lassen. Entweder den Termination Char explizit deaktivieren (Anschluss von False statt True) oder den Standard Termination Char von 0xA auf 0x80 ändern. Ich persönlich würde Vorschlag 2 bevorzugen.
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
Als erstes würde ich das "TEST"-Kommando ausprobieren und einen String 0xAA5505 an den Mikrocontroller zu senden:
Nicht ganz eindeutig erklärt ist dir Formatierung der "Power".
Wahrscheinlich wird ein U8-Wert (also 0-255) auf die Werte 0-100% skaliert.
Aber sicher bin ich mir da nicht, es könnte auch sein, dass jedes Bit im U8 eine 12.5% Leistungsstufe ist.
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
Hallo,
1000 Dank schonmal vor ab. Ihr habt mir schon sehr geholfen und ich kann via Beispielprogramm mit meiner Hardware kommunizieren.
Leider Funktioniert bis jetzt nur An/Aus und der testbefehl.
ich hab leider auch keine ahnung was der TO und terminationschar ist.
Bei der Formatierung der "Power" komm ich leider garnicht weiter. ich hab alle möglichen Werte zwischen 0-255 versucht. auch von 0-10 bzw 8 geht garnix.
wenn ich AA5501+irgendwas sende schalten sich alle Kanäle einfach ab.
wenn ich den kanälen dann über die software wieder werte zuweise kann ich sie immerhin mit AA5502 wieder anschalten. bzw mit 03 abschalten.
hat vielleicht noch jemand ne idee?
vielen dank schonmal
03.09.2013, 15:04 (Dieser Beitrag wurde zuletzt bearbeitet: 03.09.2013 15:06 von Trinitatis.)
TO ist der Timeout, also wie lange die Funktion wartet bis die von dir angegebene Anzahl von Zeichen gelesen werden. Wird die Anzahl gelesen, ist er irrelevant, im anderen Fall speingt die Funktion nach dieser Zeit ab.
Das terminations char ist das Abschlusszeichen. Du kannst vom Port dann immer bis zu diesem definierten Zeichen lesen.
Ich würde mir erstmal ein funktionierendes Terminal erstellen, dann kannst du den anderen Fragen auf den Grund gehen.
Gruß, Marko
Edit:
Außerdem würde ich alles über portmon o.ä. mitloggen, um auszuschließen, dass du etwas zu senden glaubst als das, was tatsächlich gesendet wird.
Hallo,
vorab nochmals danke für die tipps bis hier her. es geht mühsam voran.
ich kann mittlerweile für jeden kanal werte vergeben.
mein problem ist jetzt dafür ein interface zu basteln.
ich sende AA5501 und die nächsten 26 byte bestimmen meinen Power value.
jjetzt würde ich gern jeweils ein byte via schieberegler definieren. also AA5501 XX XX XX usw
ich bräuchte also 26 schieberegler die jeweils einen hexwert liefern und das müsste dann in der richtigen reihenfolge zusammengesetzt werden und an den microcontroller gesendet werden.
leider komm ich damit kein stük weiter.
hat jemand n vorschlag?
10.09.2013, 11:51 (Dieser Beitrag wurde zuletzt bearbeitet: 10.09.2013 11:52 von GerdW.)
hey,
jeder hexwert steht für einen konstanten strom der die dimmung einer bestimmten led regelt. die schieberegler steuern quasi die dimmung meiner einzellnen wellenlängen.
daher dachte ich schieberegler sind sinnvoll.
ich werd das mit den arrays mal versuchen und fürchte ich melde mich gleich mit fragen zurück
danke schonmal
gruß