Jump to content

HolWo

Administratoren
  • Gesamte Inhalte

    266
  • Benutzer seit

  • Letzter Besuch

  • Tagessiege

    4

Alle erstellten Inhalte von HolWo

  1. HolWo

    Programmfehler

    Hallo! Das ist leider ein Programmfehler, der auftreten kann, wenn Black-Boxen in einem Schaltbild entfernt worden sind. Wenn man weitere Black-Boxen entfernt oder neue hinzufügt, können Dokurahmen "verrutschen". Dies ließ sich bisher nur vermeiden, indem man einmal im Schaltbild plazierte Black-Boxen NIE mehr löscht, sondern an die Seite schiebt, um sie bei Bedarf wiederzuverwenden. Ab DASYLab 2016 SP2 ist dieser Fehler behoben -- dies betrifft aber nur neue Schaltbilder bzw. Schaltbilder bei denen der Fehler noch nicht aufgetreten ist. Bei Schaltbildern, bei denen die Dokurahmen bereits "verrutscht" sind kann keine Reparatur/Korrektur der Position erfolgen. Hier muss man (leider...) alle Dokurahmen entfernen, das Schaltbild einmal abspeichern und neuladen. Jetzt die Dokurahmen wieder hinzufügen... und bei Verwendung älterer DASYLabs darauf achten, keine Black-Boxen mehr zu löschen.
  2. HolWo

    Globale Variable über externes Textfile

    Hallo! Über das Aktionsmodul geht dies ganz leicht, indem Sie die Aktion "Variablenbereich lesen (Datei)" bzw. "Variablenbereich schreiben (Datei)" benutzen. Hiermit kann man bspw. die Variablen 1-24 in eine Textdatei "Meine_Skalierungen.INI" schreiben und mit der Lesen-Aktion wieder aus der Datei in die globalen Variablen 1-24 übertragen. Zuerst ein Schaltbild erstellen, das dazu dient, die Datei zu erstellen, die Variablenwerte festzulegen und schlussendlich in die Datei zu schreiben. Ein Schalter-Modul (Impulstaster) dient als Auslöser der Aktion. In der Aktion wird dann auf die Steigende Flanke des angeschlossenen Schalters gewartet und die Aktion "Variablenbereich schreiben (Datei)" ausgeführt. Diese hat drei Parameter "Von", "Bis" und "Dateiname". Von und Bis grenzen den Bereich ein, indem die Nummern der Variablen angegeben werden, also für das aktuelle Beispiel 1 bzw. 24. Der Parameter Dateiname ist selbsterklärend... beispielsweise "Meine_Skalierungen.INI". Legen Sie nun die Werte der Variablen fest, bspw. Variablen 1-4 sind für das Messgerät 1 zuständig, Variablen 1 und 2 sind dann X1 bzw. X2 und die Variablen 3 und 4 sind Y1 bzw. Y2. Variablen 5 und 6 sind dann X1 und X2 für das nächste Gerät usw. Sie können die Variablen entsprechend benennen, z.B. Variable 1 ist G1_X1 (Gerät 1 , X1), etc. Wenn die Variablen alle einen Wert erhalten haben, das Schaltbild ausführen und den Schalter betätigen -- die Datei mit den Variableninhalten wird erstellt. Im Schaltbild, in dem die Werte der Variablen benötigt werden, können Sie eine Aktion "Variablenbereich lesen (Datei)" benutzen, die Parameter sind wieder 1 (Von) und 24 (Bis) und der obige Dateiname. Ausgelöst wird das Ganze nun aber durch das Ereignis "Start der Messung" anstatt durch eine Flanke eines Schalters. Immer wenn das Schaltbild gestartet wird, werden die Werte -- bevor überhaupt etwas anderes passiert -- erstmal aus der Datei gelesen. Wenn Sie möchten, können Sie diese INI-Datei mit einem Texteditor öffnen und einfach anpassen, um die Werte zu verändern -- oder wieder über das andere Schaltbild gehen. In einem Skalierungsmodul können Sie die Werte für X1/2 und Y1/2 der jeweiligen Geräte als Variablen verknüpfen.
  3. HolWo

    IXXAT-CAN mit Dasylab 12. Voller Puffer.

    Hallo Herr Albrecht, ich stehe schon seit einiger Zeit mit IXXAT in Kontakt, bei der es u.a. um Probleme in Verbindung mit dem "USB-to-CAN-Compact (version 1)" geht, die bei Nutzung der neueren Revision "v2" des Geräts nicht auftreten. Haben Sie ein Gerät der Version 1 oder 2? Sie können auch einmal die neuere Betriebsystem-Treibersion von IXXAT "VCI 4" ausprobieren (VCI 3.x bitte zuvor deinstallieren!). Laut IXXAT sollten Anwendungen (wie bspw. DASYLab), die zurzeit VCI3 nutzten, ohne Probleme auch mit VCI4 funktionieren.
  4. DASYLab 2016 punktet mit neuen Funktionen im Service Pack 2 Auch wenn der Name etwas anderes vermuten lässt: Das neue DASYLab Service Pack 2 ist kein einfaches Bugfix-Update, sondern stellt neben Erweiterungen zu bestehenden Funktionen auch gänzlich neue Module zur Verfügung, die in den Vorgängerversionen noch nicht enthalten waren. Eingeführt wird mit dem DASYLab 2016 SP2 das neue Modul Blockrelais. Es unterscheidet sich vom bekannten Relais-Modul in DASYLab dadurch, dass im Blockrelais ein Datenblock nie "zerschnitten" wird. Ein Datenblock wird entweder komplett weitergeleitet oder ganz verworfen. Ebenso neu ist das Modul Flagbender. Hinter diesem etwas kryptischen Namen verbirgt sich ein Modul, das die Änderung der internen Kanaleigenschaften (Kanaltyp, Kanalflags) erlaubt. Dadurch können Situationen, in denen ein Modul aufgrund nicht passender Datenstromeigenschaften eine Messung abbrechen würde, vermieden werden, indem die Kanal-Flags entsprechend modifiziert werden. Beim Arbeiten mit DASYLab erleichtert das Laden von Schaltbildern per „Drag and Drop“ die Schaltbildentwicklung. Sie können nun eine Schaltbilddatei (DSB und DSA) einfach mit der Maus auf ein laufendes DASYLab ziehen, um die Datei im zu öffnen. Ebenso bringt das optionale, automatische Anlegen von bis zu 100 Sicherheitskopien der aktuell gestarteten Schaltbilddatei beim Messungsstart einen Sicherheitsgewinn bei der Schaltbildentwicklung. Bei der Schaltbilderstellung steht nun erheblich mehr Platz zur Verfügung. Der Faktor 4 – bei sowohl der horizontalen als auch der vertikalen Dimension – lässt die Nutzung auch von hohen Monitorauflösungen zu, bei denen bisher die nutzbare dargestellte Schaltbildfläche kleiner war als die sichtbare Fläche. Doch nicht nur diese offensichtlichen Änderungen zeichnen das Servicepack aus. Viele Module wurden optimiert. So beherrscht das Skriptmodul nun die neue Methode GetModuleName der Klasse pscript, sodass es nun bei unterschiedlichen Skriptmodulen, die dasselbe Skript ausführen, für den Benutzer leichter wird, Meldungen zum konkreten Modul zu liefern. Im Modul Daten Schreiben wurde das Famos-Dateiformat-Schreiben auf Famos Format 2 aktualisiert. Dies bedeutet im Einzelnen, dass nun wahlweise Messwerte im Float-Format (Real32, 4 Byte pro Messwert) oder Double-Format (Real64, 8 Byte pro Messwert) gespeichert, Kanalnamen und Einheiten in voller Länge von DASYLab übernommen werden und Kanalgruppennamen frei vergeben werden können. Gleichzeitig wurde das Schreiben großer Datenmengen erheblich beschleunigt. Im aktionsgesteuerten Relais musste bisher mithilfe eines Aktionsmoduls der Startzustand festgelegt werden. Diese Funktionalität ist nun direkt im Modul selber verfügbar und erspart zusätzlich Module und deren Konfiguration. Eine neue Aktion für den Linienschreiber erlaubt es die Position der Cursor zu setzen. Eine Cursorposition kann in unterschiedlichen Linienschreiber-Modulen nun gleichzeitig und synchron verändern werden. Die Cursordaten können nun bei Wahl des DDF-Dateiformats wahlweise mit einfacher Genauigkeit (REAL32) oder doppelter Genauigkeit (REAL64) gespeichert werden. Das Modul Bitmaske wurde erweitert und kann nun wahlweise mit 16 oder 32 Bit breiten Werten arbeiten. Bei Einstellung 16 Bit ist die größte verarbeitbare Zahl 65.535 (2^16-1). Bei Einstellung 32 Bit ist das 4.294.967.295 (2^32-1). Die Serielle Schnittstelle (RS-232) bietet jetzt Baudraten-Einstellungen bis 921600 und unterstützt auch die Prüfsumme IBM CRC-16. Bei Operationen mit einem Kanal bietet das Arithmetik-Modul eine neue Kanaloperation "Summen" an: diese addiert jeweils den vorherigen Wert zum aktuellen Wert und stellt somit das Gegenstück zur bereits vorhandenen Kanaloperation "Differenzen" dar. Das zweite Service Pack steht allen Bestandskunden mit laufendem Wartungsvertrag kostenfrei zur Verfügung. Zu beachten ist, dass eine Neuinstallation des Programms notwendig ist, und dass neue Seriennummern benötigt werden. - Quelle: measx.com Neuerungen in DASYLab 2016 mit Service Pack 2 Skriptmodul Die neue Methode GetModuleName() der Klasse pscript liefert nun den Modulnamen. self.GetModuleName() # liefert bspw. 'Script00' (Standardname des Skriptmoduls) Hinweis: Beachten Sie bitte, dass ein geänderter Modulname im Skript erst zur Verfügung steht, nachdem der Konfigurationsdialog mit der Ok-Taste verlassen wurde! Modul Daten Schreiben: Famos-Dateiformat Das Famos-Dateiformat zum Schreiben von Messdaten wurde aktualisiert (Famos Format 2). Speichert nun wahlweise Messwerte im Float-Format (Real32, 4 Byte pro Messwert) oder Double-Format (Real64, 8 Byte pro Messwert). Kanalnamen und Einheiten werden in der vollen Länge von DASYLab übernommen. Der Gruppenname (Kanalgruppe) kann frei vergeben werden. Das Schreiben großer Datenmengen wurde erhebliche beschleunigt. Die Fehlerbehandlung wurde verbessert. Vergrößerung der Schaltbildfläche Schaltbilder können nun erheblich größer werden (4-fache Größe horizontal und vertikal). Hierdurch werden auch hohe Monitorauflösungen unterstützt, bei denen die nutzbare Schaltbildfläche eventuell kleiner war als die sichtbare Fläche. Hinweis: Schaltbilder, die als ASCII-Schaltbild gespeichert werden (Dateiendung DSA/DMX), können nicht in früheren DASYLab-Versionen geladen werden! Modul Relais (aktionsgesteuertes Relais) Der Startzustand (Daten sperren bzw. Daten weiterleiten) des aktionsgesteuerte Relais kann nun direkt im Modul festgelegt werden. Zuvor musste dies mithilfe eines Aktionsmoduls bewerkstelligt werden. Modul Linienschreiber Es gibt eine neue Aktion für den Linienschreiber mit der die Position der Cursor gesetzt werden kann. Die Postionen der Cursor in unterschiedlichen Linienschreiber-Modulen können nun gleichzeitig und synchron verändern werden. Die Cursordaten im Linienschreiber können nun bei Wahl des DDF-Dateiformats wahlweise mit einfacher Genauigkeit (REAL32) oder doppelter Genauigkeit (REAL64) gespeichert werden. Laden von Schaltbildern: Drag and Drop Sie können nun eine Schaltbilddatei (DSB und DSA) einfach mit der Maus auf ein laufendes DASYLab ziehen, um die Datei im laufenden DASYLab zu öffnen. Serielle Schnittstelle (RS-232) DASYLab bietet nun auch die Baudraten-Einstellungen 230400, 460800 und 921600 an. Der serielle Ausgang unterstützt nun auch die Prüfsumme IBM CRC-16. Das Steuerzeichen lautet /cm. Globale Variablen und globale Schaltbild-Einstellungen Die Behandlung von globalen Variablen und VAR-Dateien wurde erweitert. Sie können nun einstellen, dass die globalen Variablen aus dem Schaltbildpfad gelesen werden sollen. Sicherheitskopien von Schaltbilddateien DASYLab erstellt bei Auswahl der Option selbstständig beim Messungsstart die Sicherheitskopie des aktuellen Schaltbilds in der Datei last.dsb im Standardverzeichnis für Schaltbilder. Wahlweise können nun Sicherheitskopien der letzten maximal 99 gestarteten Schaltbilder abgelegt werden (last.dsb, last~01.dsb,..., last~99.dsb). Neues Modul Blockrelais Das Modul Blockrelais unterscheidet sich vom normalen Relais-Modul in DASYLab dadurch, dass im Blockrelais ein Datenblock nie "zerschnitten" wird. Ein Datenblock wird entweder komplett weitergeleitet oder gar nicht. Neues Modul Flagbender Das Modul erlaubt die Manipulation der interner Kanaleigenschaften (Kanaltyp, Kanalflags). Modul Daten Lesen: ASCII Format Beim Einlesen von Daten im ASCII-Format werden für den Zeitkanal nun zusätzlich folgende Formate für das Datum angeboten: Datum [TT/MM/JJ] Datum [MM/TT/JJ] Datum [JJ/MM/TT] Modul Bitmaske Die Modulvarianten "Bitmaske ausdekodieren", "Kanäle bitweise verknüpfen" und "Bitmaske extrahieren und kombinieren" können nun auch wahlweise mit 32 Bit breiten Werten arbeiten. Bei Einstellung 16 Bit ist die größte verarbeitbare Zahl 65.535 (2^16-1). Bei Einstellung 32 Bit ist die größte verarbeitbare Zahl 4.294.967.295 (2^32-1). Bis einschließlich DASYLab 2016 war die 16-Bit-Einstellung die feste eingebaute Annahme für die Berechnung. Mehrere Radio-Buttons bei Modulvariante "Bitmaske ausdekodieren" lassen sich nun gemeinsam auf "0-Bit setzen", "1-Bit setzen" oder "Wie Eingang" umschalten: <STRG> + <Linksklick>: Die acht Bits einer Gruppe werden angepasst. <SHIFT> + <Linksklick>: Alle 16 bzw. 32 Bit werden gemeinsam geändert. Modul Arithmetik (Operationen mit einem Kanal) Das Arithmetik-Modul bietet nun eine neue Kanaloperation "Summen" an: diese addiert jeweils den vorherigen Wert zum aktuellen Wert und stellt somit das Gegenstück zur bereits vorhandenen Kanaloperation "Differenzen" dar. Beseitigte Probleme in DASYLab 2016 mit Service Pack 2 Die folgende Liste enthält die Beschreibungen der zwischen dem Service Pack 1 und dem Service Pack 2 beseitigten Probleme. Titel Beschreibung Dokumentationsrahmen in Black-Boxen Bei Verwendung von Dokumentationsrahmen in Black-Boxen konnte beim Hinzufügen neuer und Entfernen vorhandener Black-Boxen die Zuordnung der Dokumentationsrahmen zu Black-Boxen verloren gehen. Dieser Fehler wurde behoben. DDE-Servername Der Name von DASYLabs DDE-Server ist nun wieder DASYLab, nicht mehr DASYLab 2016. Neuzeichnen im Y/t-Modul Ein Linksklick ins Anzeigefenster des Y/t-Moduls führte zum Neuzeichnen aller DASYLab-Fenster. Dieser Fehler wurde behoben. Schaltbilder im ASCII-Format Schaltbilder im ASCII-Format (*.DSA) können nun auch wieder korrekt eingelesen werden, wenn in einem Stringausdruck (globale Strings) ein Semikolon verwendet wurde. Das Speichern eines Schaltbilds funktioniert nun auch wieder immer, wenn im Schaltbild ein "Datei lesen"-Modul vorhanden ist. Zeitauflösung beim ASCII-Format Beim Schreiben von Daten im ASCII-Format und Auswahl der Parameter 'Messzeit ' und 'Uhrzeit des Rechners' war bisher die größtmögliche Auflösung 'Sekunden'. Jetzt werden für den Zeitstempel auch Nachkommastellen geschrieben. Modul FFT (Fast Fourier Transformation) Bei der Variante "Komplexe FFT eines reellen Signals" des FFT-Moduls waren die ersten acht Ausgänge (Fifos) mit dem falschen Kanaltyp versehen, wenn die Option "Symmetrische Achse" aktiviert war. Bei FFT-Modulen mit maximal acht Kanälen wurde die Änderung der Option "Symmetrische Achse" in einem Kanal auch immer auf den nächsten Kanal angewendet. Diese Fehler wurde behoben. Modul Daten sichern Daten in den Formaten NI TDM, NI TDMS und DIAdem DAT können jetzt ebenfalls gesichert werden. Im Backup-Fenster werden Datum und Uhrzeit jetzt in einem besser lesbaren Format angezeigt und die Anordnung der Controls wurde übersichtlicher gestaltet. TDM/TDMS-Format: Zeitkanal Beim Schreiben der Daten als >REAL32-Format wird jetzt im Kanal Time der Gruppe jeder Zeitwert korrekt berechnet. Bisher konnte es beim Erzeugen der Werte zu Rundungsfehlern kommen, so dass der Time-Kanal nicht monoton steigend war. TDM/TDMS-Format: Startzeit Falls getriggerte Zeitdaten (mit kurzen Blöcken und/oder Blöcke mit Abtastlücken) im ersten Block nicht bei Zeitwert 0 beginnen, dann wird das Waveform-Attribut Waveform x-Offset im Kanalheader auf den exakten Anfangswert gesetzt. Bisher war das Waveform-Attribut Waveform x-Offsetimmer gleich Null. Schreiben TDM/TDMS-Format: Kanalgruppen Die Zuordnung von Kanälen zu Gruppen durch Auswahl von Gruppennamen über Globale Strings und das Handling der Gruppen-Zusatzeigenschaften wurden korrigiert. Bei Multiplexer-Eingangsdaten gehören alle Kanäle eines Einganges zur gleichen Kanalgruppe. Deshalb braucht der Gruppenname nur für einen Kanal dieser Gruppe ausgewählt werden. Das betrifft auch die Zusatzeigenschaften der Gruppe. Bei Nicht-Multiplexer-Eingangsdaten können die Gruppennamen für jeden Kanal über Globale Strings frei vergeben werden. Das Default-Handling der Kanalgruppen ist unverändert. Anzeige-Ansicht In der "Anzeige"-Ansicht von DASYLab werden nun auch wieder Bilder im JPG- und PNG-Formate korrekt dargestellt. Tastaturaktionen Tastaturaktionen können nun wieder definiert werden. Der Fehler trat mit DASYLab 2016 SP1 neu auf. Scrollen der Arbeitsfläche Scrollte man die sichtbare Fläche des Arbeitsbereichs ganz nach rechts oder unten und vergrößerte das DASYLab-Fenster, dann vergrößerte man die Fläche über die tatsächlich bearbeitbare Fläche hinaus. Dieser Fehler wurde behoben. Versenden globaler Strings (RS-232/ICom) Behebung eines Fehlers beim Versenden globaler Strings als ASCII-Hex-String (Format: [ah]) bei Nutzung von Prüfsummen. Zeichen, die im ah-Format eine gültige "Nutzlast" sind, aber 0-Zeichen sind, wurden bisher ignoriert und haben zu nicht korrekten Prüfsummen geführt. Falsche Anordnung der Eingabeelemente Im Bedienfenster von Schalter-, Positionsschalter- und Handregler-Modul wurde die Anzahl der Zeilen (bzw. Spalten) je nach Kanalanzahl und gewählter Anordnung der Controls falsch berechnet. Bei einer ungeraden Anzahl von Kanälen wurde das Control des letzten Kanal nicht korrekt im Bedienfenster positioniert. Dieser Fehler wurde behoben. Dialoge des Skriptmoduls Bei Bildschirm-Skalierungen über 100% konnten sich Elemente von Dialogen überlappen. Dieser Fehler wurde behoben. Treiberentwicklung ID Titel Beschreibung Microstar DAP-Treiber Der Treiber für DAP-Karten von Microstar wurde erweitert und korrigiert. So kann nun der Highspeed-Modus (bis zu 2M-Samples) bei bestimmten Karten (5400a-Familie) aktiviert werden, sofern höchstens 4 Kanäle (GROUPSIZE 4) genutzt werden. EtherNet/IP (Eingang) DASYLab enthält nun einen einfachen EtherNet/IP Treiber (EtherNet Industrial Protocol, EIP) zum Lesen von Messwerten aus entsprechenden Geräten bzw. direkt verbundenen Sensoren. Neben ProfiNet und Modbus ist EtherNet/IP ein derzeit verbreiteter Ethernet basierter Feldbus. Dieses Modul deckt zurzeit nur die Grundfunktionalität von EIP ab und wird später entsprechend erweitert. Downloads Direkt-Download DASYLab 2016 mit Service Pack 2 (deutsch) Direkt-Download DASYLab 2016 mit Service Pack 2 (englisch) DASYLab 2016-Produktseite mit Übersicht und den offiziellen Download-Links Download-Übersicht zu allen verfügbaren DASYLab-Versionen
  5. HolWo

    RS232 Eingang zeitgesteuert (D12)

    Ich bin zwar nicht sicher, ob ich das Problem erfasst habe, aber grundsätzlich ist ein Pausieren in Verbindung einer Messwerterfassung keine sinnvolle Idee. Die Pausefunktion kann sinnvoll sein, wenn man ein Schaltbild mit reinen Software-Datenquellen hat (z.B. Lesen aufgezeichneter Daten). Dabei hat man keinerlei Zeitprobleme, da die "Uhr" einfach angehalten und wieder laufengelassen wird. Diese Möglichkeit hat man in Verbindung mit echter Hardware natürlich nicht. Gibt es einen Grund dafür, die Messuhren immer nur genau dann abzufragen, wenn man einen Messwert haben möchte? Spricht etwas dagegen, die Messuhren öfter abzufragen und nur die Werte weiterzuverarbeiten, die zum Zeitpunkt passen? Bspw. die Messuhren jede Sekunde abfragen, die Werte in eine Haltfunktion leiten (oder in Variablen schreiben) und diese "gehaltenen bzw. gespeicherten" Werte im 10-Sekunden-Takt ausgeben? Und wenn man die Messung Pausieren möchte, dann hält man nicht das Programm/Schaltbild an, sondern unterbindet das Weiterverarbeiten der weiterhin von den Messuhren erfassten Daten.
  6. HolWo

    RS232 Eingang zeitgesteuert (D12)

    "Die Abtastrate des RS-Ausgrangs wird von der Variablen ${ELAPSED_TIME} angesteuert. Die Messwerte sind an der Uhrzeit gekoppelt." Können Sie bitte das Schaltbild zur Verfügung stellen? Ich verstehe nicht, was Sie mit dem oben Zitierten meinen.
  7. Da bin ich leider etwas ratlos... welche Messtechnik/-hardware nutzen Sie für die Erfassung?
  8. Hallo! Können Sie bitte das verwendete Schaltbild hier hochladen? DASYLab verarbeitet Daten blockweise: bei bspw. 1000Hz Abtastrate und Blockgröße 100 werden zwar 1000 Werte pro Sekunde verarbeitet, aber die 1000 Werte werden in 100er-Blöcken von einem Modul zum nächsten gereicht. D.h., wenn Sie die Blockgröße von 100 auf 500 verändern, dann sehen Sie bei 1000Hz Abtastrate im Digitalinstrument nicht mehr jede zehntel Sekunde einen Wert, sondern nur noch einen neuen Wert pro halbe Sekunde. Bei sich schnell ändernden Signalverläufen, bekommen Sie bei verschiedenen Blockgrößen folglich andere Einzelwerte im Digitalinstrument dargestellt, diese müssen aber nicht falsch sein -- man bekommt von z.B. einer Sinuskurve nur unterschiedliche "Momentaufnahmen" zu sehen (bspw. "jede zehntel Sekunde" versus "zwei Werte pro Sekunde").
  9. HolWo

    RS232 lesen/schreiben

    Ich meinte nicht, dass alle Antworten verworfen werden sollen. Vielmehr gibt es Geräte, die einen erhaltenen Befehl bestätigen ("ACK" o.ä.) und dann erst die eigentlich Antwort senden, falls das Zusammenstellen der Antwort mehr Zeit in Anspruch nimmt. Diese Bestätigungen können natürlich auch beim RS232-Eingang an und stören bei der Interpretation der eigentlich gewünschten Antwort. Sie können testweise probieren, dem RS232-Eingang so viele Kanäle zu geben, wie die erwartete Antwort Zeichen hat. Der Formatstring jedes Kanals ist nur ein einzelnen b (für Byte). Ein Digitalinstrument anschließen und auf Hex bzw. ASCII-Darstellung stellen. Jetzt sollten Sie nach dem Senden die einzelnen Zeichen der Antwort sehen können. Wenn Sie immer denselben Befehl senden, sollte im Digitalinstrument immer das gleiche Format erkennbar sind mit stellenweise unterschiedlichen Zeichen.
  10. HolWo

    PT100 Messung

    Danke für die Rückmeldung!
  11. HolWo

    RS232 lesen/schreiben

    Hallo! Wenn Sie die Befehle senden, bestätigt das Gerät diese durch zurückgesendeten Zeichen/Nachrichten? Diese Zeichen würden dann vom RS232-Eingang empfangen und die Interpretation der "Datennachrichten" durcheinanderbringen. Im Formatstring des RS232-Ausgangs können Sie das Steuerzeichen /# m verwenden, wobei m die Anzahl der Zeichen ist, die der RS232-Ausgang aus dem Empfangspuffer entfernt, damit diese nicht vom RS232-Eingang gelesen werden können.
  12. HolWo

    Can Bus Ansteuerung

    Hallo! Im Configurator von DASYLab können Sie einen der CAN-Treiber aktivieren, passend zur verwendeten CAN-Hardware (siehe Bild). DASYLab 13 und 2016 unterstützen Vector-CAN, NI-CAN und IXXAT-CAN. Laut Webseite von MCC bietet das DaqBoard/3001 leider keine CAN-Ports an, sondern "nur" Analog-I/O, Digital-I/O und Counter.
  13. Hallo! Der Kombitrigger hat zwei Modi; bei einem hat das Modul zwei Eingänge und einen Ausgang. Das erste "Lichtschranken-Signal" an den Eingang 0, das zweite an den Eingang 1 anschließen. Im "Triggermodul mit 2 Eingängen" ist die Startbedingung an das Signal des ersten Eingangs gekoppelt (Eingang0), die Stoppbedingung an die des anderen Eingangs. Wenn nun am ersten Eingang eine steigende Flanke erkannt wird (Startbedingung: Steigende Flanke) aktiviert sich der Trigger und schaltet seine Ausgabe von 0.0V auf 5.0V um. Wenn am zweiten Eingang die Flanke der anderen LIchtschranke erkannt wird (Startbedingung: auch Steigende Flanke), soll der Trigger wieder deaktiviert werden (Ausgabe 5.0V >> 0.0V). D.h., wenn die beiden Lichtschranken nacheinander unterbrochen werden, gibt der Trigger für diese Zeit TTL High, TTL Low sonst. Jetzt das Statistik-Modul Zähler an den Ausgang des Triggers anschließen und das Modul die Zeitdauer mit High-Pegel ausgeben lassen. Über die Option Rücksetzen nach Flanke kann man nun entscheiden, ob bei jeder erkannten steigenden Flanke (Ausgabe des Triggers) die Zeit zurückgesetzt werden soll oder die Zeit vom letzten Zählstand fortgezählt werden soll. Das Ganze funktioniert natürlich nur, wenn die Lichtschranken immer in derselben Richtung "angefahren" werden und die Reihenfolge der Unterbrechungen gleich bleibt..
  14. HolWo

    Boolean im Text anzeigen

    Hallo! Die Bitfolgen entsprechen Dezimalzahlen. Nutzen Sie einen Positionsschalter mit 5 Schalterstellungen, jede Schalterstellung gibt einen Wert aus: Schalterstellung0 gibt 0.0 aus, Schalterstellung1 gibt 1.0 aus, usw. Verbinden Sie das Positionsschalter-Modul mit einem Aktionsmodul. Hier können Sie das Erreichen des Werts 1.0 überwachen und dann einen globalen String auf "rechts" setzen. Ist der Datenkanal gleich 5.0, entsprechend auf "gestoppt". Analog für die übrigen Texte und Bitkombinationen/Dezimalzahlen.
  15. HolWo

    IXXAT-CAN und DAsyLab v13.0

    Hallo! Welche Version des IXXAT VCI-Betriebssystemtreibers nutzen Sie? Mit VCI 4.x gibt's noch einige... Unstimmigkeiten; nutzen Sie daher bitte die jüngste VCI 3.x-Version! Ist die Baudrate korrekt? Nutzen Sie bitte zuerst einmal einen passend konfigurierten CAN-Eingang mit einem angeschlossenen Digitalinstrument, um sicherzustellen, dass auch tatsächlich etwas empfangen werden kann.
  16. HolWo

    Script-Modul

    Hallo! Das Skript-Modul kann keine Aktionen senden und empfangen. Anstatt im Skriptmodul zusätzlich eine Variable zu setzen, um zu signalisieren, dass der String bereitgestellt wurde, können Sie selber einen TTL-Puls am Ausgang erzeugen, um mit einem folgenden Aktionsmodul den String "zu melden". Eine Übersicht der Funktionen finden Sie in der DASYLab-Hilfe: Module >> Spezial >> Script-Modul. Prinzipiell hat man Zugriff auf Funktionen zum Zugriff auf die "eigenen" Moduleingänge/-ausgänge, um Daten anzunehmen und nachfolgenden Modulen Daten bereitszustellen. Globale Variablen und Strings lassen sich lesen und schreiben, man kann eine eigene Zeitbasis anbieten (falls man einen Treiber erstellt) und die Einstellungen einer vorhandenen Zeitbasis lesen. Eigene Fenster können mittels Python zwar erzeugt werden, sind aber unabhängig von DASYLab und nicht auf einer Layoutseite einbettbar.
  17. Hallo! Wenn Sie IOtech-Hardware nutzen, dann legt der zugehörigen DASYLab-Treiber von IOtech Konfigurations-Informationen in einer XML-Datei ab. Diese hat denselben Dateinamen wie die entsprechende Schaltbild-Datei. Wenn ein Schaltbild geladen wird, in dem sich IOtech-DASYLab-Module befinden, sucht der IOtech-DASYLab-Treiber nach dieser Datei; wenn diese nicht gefunden wird, erscheint die gezeigte Meldung. Stellen Sie bitte sicher, dass DASYLab auf dem Rechner ausreichende Privilegien hat, um die XML-Datei auf der Festplatte anzulegen bzw. eine existierende zu ändern. Außerdem, dass die XML-Datei, die zum Schaltbild gehört, entweder im selben Verzeichnis wie das Schaltbild liegt oder im DASYLab-Programmverzeichnis. Den aktuellsten (und letzten) Treiber finden Sie auf der Seite von Measurement Computing (IOtech gehört zu MCC): https://www.mccdaq.com/downloads/iotech_software/DaqBoard_3000_Series_PCI_USB/
  18. HolWo

    Skriptmodul-Zeitbasis

    Hallo! Hier fehlt leider im Skript in der Funktion SetupFifo die explizite Rückgabe von True. Ohne explizites return True bzw. return False wird automatisch None zurückgegeben. Wenn das DASYLab-Subsystem den Rückgabewert None erkennt, dann wird die SetupFifo-Funktion des Skripts ignoriert und die Optionen des Dialogs Kanal-Eigenschaften werden stattdessen angewendet -- aber ohne die Information über Abtastrate und Blockgröße auf die Ausgänge anzuwenden: Da man aber im Beispiel eine Datenquelle als Modul vorliegen hat, muss man über die SetupFifo-Funktion nachfolgenden Modulen mitteilen, mit welchen Eigenschaften die Daten während der laufenden Messung ankommen werden (u.a. Abtastrate und Blockgröße). Da die SetupFifo durch das fehlende return True aber gar keine Auswirkung hat, bleiben die Eigenschaften des ausgegebenen Datenstroms nach dem Laden des fehlerhaften(!) Skripts in das Modul aber unverändert (hier: info.timebaseID = 2, also Treiber-Zeitbasis). Ändert man nun im Dialog die Zeitbasis-Einstellung, dann werden in der ProcessData-Funktion zwar die von der nun ausgewählten Zeitbasis vorgegebene Abtastrate und Blockgröße an den leeren angeforderten Block (Funktion GetOutputBlock) geschrieben... aber der leere Block ist weiterhin mit den Eigenschaften der Treiber-Zeitbasis vorkonfiguriert, weil das return True fehlt in der SetupFifo-Funktion! Konkret für das Beispiel heisst das: In der info-Klasse ist die Zeitbasis-ID 2 vorgegeben, die Eigenschaften der Ausgänge werden also von der Treiber-Zeitbasis abgeleitet. Die Treiber-Zeitbasis ist im Schaltbild auf 10 Hz, Blockgröße 4 eingestellt. Startet man die Messung funktioniert alles wie erwartet. Ändert man nun die Zeitbasis auf DASYLab (10000 Hz, BG 1000 im Beispiel), dann werden in der ProcessData-Funktion die Eigenschaften zwar von der DASYLab-Zeitbasis abgefragt, aber durch Funktion GetOutputBlock stellt DASYLab nachwievor einen leeren Block bereit, der eine maximale(!) Blockgröße von 4 hat -- weil die SetupFifo-Funktion des Skripts keine Auswirkung hat und Eigenschaften der Ausgänge nicht an die Zeitbasis-Änderung im Dialog angepasst werden. Die Eigenschaft BlockSize, die an jeden Datenblock noch einmal explizit drangeschrieben wird, ist die reale Blockgröße, die immer kleiner oder gleich der maximalen Blockgröße ist, niemals größer. Da die "alte" maximale Blockgröße aber in diesem Beispiel quasi fest 4 ist (auch wenn's langsam langweilig wird : wegen des fehlenden return True in der SetupFifo-Funktion!), hat der angeforderte Datenblock Platz für höchstens vier Datenwerte. Durch die Umstellung im Dialog auf die DASYLab-Zeitbasis aber sollen 1000 Werte in den Block geschrieben werden. Hier kommt es dann zum Fehler FIFO data mismatch, weil die durch die in der SetupFifo vereinbarte maximale Blockgröße durch das Falschbelegen in der ProcessData-Funktion nicht eingehalten wird -- 1000 Werte passen nunmal nicht in einen Block mit nur 4 Plätzen. Lange Rede, kurzer Sinn: die SetupFifo-Funktion explizit mit return True abschliessen!
  19. Hallo, ich habe ein Beispiel angehängt von dem Sie sich inspierieren lassen können: die Excel-Tabelle müssen Sie zunächst im Windows ODBC Administrator** als Datenquelle namens "Obst-DB" einrichten (s. Schaltbild, ODBC-Module). Das Beispielschaltbild kann ab einschließlich DASYLab 13 verwendet werden. ** Unbedingt die 32-Bit-Version verwenden, wenn Sie ein 64-Bit-Betriebssystem einsetzen: c:\windows\syswow64\odbcad32.exe DASYLab 13_ODBC_Obst-Beispiel.zip
  20. HolWo

    PID PWM Signal erzeugen

    Das PID-Modul gibt keine PWM-Signale aus. Wenn bspw. die Parameter P=1, I=0 und D=0 gewählt sind, dann gibt das Modul die Differenz zwischen den Eingängen (Sollwert oben, Istwert unten) aus.
  21. HolWo

    Verwendung von 2 x NI cDAQ-9174

    DASYLabs bis einschließlich Version 12 sind empfindlich ggü. nicht lauffähigen Tasks, unabhängig davon, ob die Tasks fehlerhaft konfiguriert sind oder verknüpfte Geräte nicht angeschlossen sind. Es kann durchaus sein, dass die "ersten" Tasks, die im MAX lauffähig sind, im DASYLab 12 ebenfalls funktionieren. D.h. alle bis zum ersten nicht lauffähigen Task erfolgreich importierten Tasks können genutzt werden, alle folgenden Tasks -- selbst funktionierende, die nach einem fehlerhaften Task importiert werden -- nicht mehr. Die Fehlermeldung zeigt "nur" an, dass der Abgleich nicht erfolgreich gewesen ist; das bedeutet aber nicht, dass gar nichts importiert werden konnte. Ab einschließlich DASYLab 13 wurde das Verhalten angepasst, sodass bereits im MAX nicht lauffähige Tasks übersprungen werden und die Tasks, die im MAX funktionieren, ins DASYLab importiert werden können. Unabhängig davon sollten Sie Ihren MAX/DAQmx aktualisieren: die "frühen 15er-Versionen" sind nicht empfohlen, wenn DASYLab zum Einsatz kommt. Ab MAX/DAQmx 15.5 und neuer ist man wieder auf der sicheren Seite.
  22. HolWo

    DASYLab – Grundlagenschulung

    bis
    DASYLab – Grundlagenschulung
  23. HolWo

    DASYLab – Skript-Modul

    bis
    DASYLab – Skript-Modul
  24. HolWo

    DASYLab – Grundlagenschulung

    bis
    DASYLab – Grundlagenschulung
×