Herunterladen Inhalt Inhalt Diese Seite drucken

JÄGER ADwin-Pro II Systembeschreibung

Programmierung in adbasic
Vorschau ausblenden Andere Handbücher für ADwin-Pro II:
Inhaltsverzeichnis

Werbung

ADwin-Pro II
Systembeschreibung
Programmierung in ADbasic
ADwin-Pro II Software, Handbuch Apr. 2021

Werbung

Inhaltsverzeichnis
loading

Inhaltszusammenfassung für JÄGER ADwin-Pro II

  • Seite 1 ADwin-Pro II Systembeschreibung Programmierung in ADbasic ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 2 Hier finden Sie immer einen Ansprechpartner für Ihre Fragen: Hotline: (0 62 51) 9 63 20 Fax: (0 62 51) 5 68 19 E-Mail: info@ADwin.de Jäger Computergesteuerte Messtechnik GmbH Internet www.ADwin.de Rheinstraße 2-4 D-64653 Lorsch ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 3: Inhaltsverzeichnis

    A.3 Thematische Befehlsübersicht........A-24 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 4: Typografische Konventionen

    Elemente eines Quelltextes wie Befehle, Variablen, Kommentar und sonstiger Text wer- Var_1 den im Schrifttyp Courier New und farbig dargestellt. In einem Datenwort (hier: 16 Bit) werden die Bits wie folgt nummeriert: Bit-Nr. … Wert des Bits … Bezeichnung ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 5: Einführung

    Die Befehle zum Ansprechen des ADwin-Pro II-Systems aus ADbasic werden in Include-Dateien zur Verfügung gestellt. Die Include-Dateien finden Sie im Verzeichnis <C:\ADwin\ADbasic\Inc> (Standard-Installation). Um den Zugriff auf die Module des ADwin-Pro II-Systems zu ermöglichen, bin- den Sie mit folgender Zeile alle erforderlichen Include-Dateien in Ihr ADbasic- Programm ein: #INCLUDE ADwinPRO_ALL.Inc...
  • Seite 6: Das Programm Adpro.exe Das Programm Adpro.exe

    Aufwand für den Anwender den Nutzen bei weitem übersteigt: die notwendigen Modulinformationen müssten regelmäßig aktuali- siert, ausgewertet und manuell in ADbasic-Programme eingepflegt werden. Daher ist die Funktion „Erkennen von Modultypen“ nur in ADpro.exe, nicht aber in ADbasic verfügbar. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 7: Adbasic-Befehle

    ADwin ADbasic-Befehle Pro II: Allgemeine Befehle 3 ADbasic-Befehle Dieser Abschnitt beschreibt Befehle zum Ansprechen der ADwin-Pro II-Module. Im Anhang finden Sie außerdem sortierte Befehlsübersichten: – Alphabetische Befehlsübersicht (Anhang A.1) – Befehlsübersicht nach Modulen (Anhang A.2) Nutzen Sie diese Übersicht, um die Funktionen eines Moduls anhand der gülti- gen Befehle kennen zu lernen.
  • Seite 8 E, SENT-4-Out Rev. E, SENT-6 Rev. E, SG-4/18 Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E, TRA-16 Rev. E Beispiel #Include ADwinPro_All.Inc Init: (P2_Check_LED(1)=0) Then 'Falls LED aus ist … P2_Set_LED(1,1) '… dann LED einschalten EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 9 E, SENT-4-Out Rev. E, SENT-6 Rev. E, SG-4/18 Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E, TRA-16 Rev. E Beispiel #Include ADwinPro_All.Inc Init: P2_Set_LED(1,1) 'LED am Modul 1 einschalten Event: Rem ... Finish: P2_Set_LED(1,0) 'LED am Modul 1 ausschalten ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 10 Prozessfrequenz in Hertz. frequency LONG Anzahl Prozesszyklen (= Processdelay). ret_val LONG Bemerkungen - / - Siehe auch Calc_TicksToNs Gültig für CPU-T10, CPU-T11, CPU-T12, CPU-T9 Beispiel #Include ADwinPro_All.Inc Init: Rem Processdelay für 150kHz einstellen Processdelay = Calc_Processdelay(150000) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 11 Siehe auch Calc_Processdelay Gültig für CPU-T10, CPU-T11, CPU-T12, CPU-T9 Beispiel #Include ADwinPro_All.Inc time As Float Event: Rem Dauer eines Programmabschnitts feststellen Par_1 = Read_Timer() Rem Programmabschnitt Rem ... Par_2 = Read_Timer() time Calc_TicksToNs(Par_2 - Par_1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 12: Ein Event-Eingang

    E, RSxxx-2 Rev. E, RSxxx-4 Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E, TRA-16 Rev. E Beispiel #Include ADwinPro_All.Inc Init: Rem Event-Eingang am Modul 1 konfigurieren für Rem Mindestzeit 15 ns, neg. Flanken, 4 Flanken P2_Event_Config(1,0,2,4) Rem Externes Event-Signal am Modul 1 freigeben P2_Event_Enable(1,1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 13 E, RSxxx-2 Rev. E, RSxxx-4 Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E, TRA-16 Rev. E Beispiel #Include ADwinPro_All.Inc Init: Rem Event-Eingang am Modul 1 konfigurieren für Rem Mindestzeit 15 ns, neg. Flanken, 4 Flanken P2_Event_Config(1,0,2,4) Rem Externes Event-Signal am Modul 1 freigeben P2_Event_Enable(1,1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 14: Ohne Vorverarbeitung

    4 Flanken je Signalzyklus ergibt sich eine maximale Frequenz von 20MHz für das resultierende Event-Signal. Der Abstand zwischen einer Flanke an EVENT / A und einer Flanke an B darf 50ns nicht unterschreiten. Impulsbreiten oder Pausenzeiten kürzer als 100ns werden nicht verwertet. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 15 Rem Event-Eingang am Modul 1 konfigurieren für Rem Mindestzeit 15 ns, neg. Flanken, 4 Flanken P2_Event_Config(1,0,2,4) Rem Vorverarbeitung auf Freigabeimpuls und Rem neg. Flanke einstellen P2_Event2_Config(1,1,2) Rem Externes Event-Signal am Modul 1 freigeben P2_Event_Enable(1,1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 16 Rev. E Beispiel ADwinPro_All.Inc #Include Init: Rem Event-Eingang am Modul 1 (AIn-F-8/14) konfigurieren Rem für Mindestzeit 15 ns, neg. Flanken, 4 Flanken P2_Event_Config(1,0,2,4) Rem Externes Event-Signal am Modul 1 freigeben P2_Event_Enable(1,1) Event: Par_1 = P2_Event_Read(1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 17 Latch P2_Cnt_Latch – Zähler Die ausgelösten Aktionen sind wie oben beschrie- ben. Als Voreinstellung nehmen alle Ein- oder Ausgänge der gewählten Module an der Aktion teil. Mit können Sie bei bestimmten Modulen ein P2_Sync_Enable ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 18 'Auf des Ende der Wandlung warten Rem A/D Wandler 1 der Module 1,2,4 auslesen Data_1[i]=P2_Read_ADCF(1,1) Data_2[i]=P2_Read_ADCF(2,1) Data_3[i]=P2_Read_ADCF(4,1) Rem Wert in Ausgangsregister des D/A Moduls 5 schreiben P2_Write_DAC(5,1,Data_5[i]) (i=1000) Then End 'Ende nach 1000 Durchläufen Inc(i) 'Index erhöhen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 19: Digitale Kanäle

    Co Rev. E, DIO-8-D12 Rev. E, MIO-4 Rev. E, MIO-4-ET1 Rev. E, MIO-D12 Rev. E, OPT-16 Rev. E, OPT-32-24V Rev. E, PWM-16(-I) Rev. E, REL-16 Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E, TRA-16 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 20 'Auf des Ende der Wandlung warten Rem A/D Wandler 1 der Module 1,2,4 auslesen Data_1[i]=P2_Read_ADCF(1,1) Data_2[i]=P2_Read_ADCF(2,1) Data_3[i]=P2_Read_ADCF(4,1) Rem Wert in Ausgangsregister des D/A Moduls 5 schreiben P2_Write_DAC(5,1,Data_5[i]) (i=1000) Then End 'Ende nach 1000 Durchläufen Inc(i) 'Index erhöhen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 21 Slave-Modulen, sonst wird auf letzteren die Burst-Messreihe nicht gleichzeitig mit dem letzten Signal des Master-Moduls beendet. Siehe auch P2_Event_Enable, P2_Event_Config, P2_Event2_Config, P2_Sync_All, Sync_Enable, P2_Sync_Stat Gültig für AIn-F-4/16 Rev. E, AIn-F-4/18 Rev. E, AIn-F-8/16 Rev. E, AIn-F-8/18 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 22 'get trigger point with 50 kHz Event: Par_1=P2_Burst_Status(module)'number of remaining measurements (Par_1=0) Then End 'burst sequence finished, go to FINISH Finish: Rem copy the last converted data of all 4 channels P2_Burst_Read_Unpacked4(module,count,0, Data_1,Data_2,Data_3,Data_4,1,3) P2_Burst_Read_Unpacked4(module+1,count,0, Data_5,Data_6,Data_7,Data_8,1,3) P2_Burst_Read_Unpacked4(module+2,count,0, Data_10,Data_10,Data_11,Data_12,1,3) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 23 Co Rev. E, DIO-8-D12 Rev. E, MIO-4 Rev. E, MIO-4-ET1 Rev. E, MIO-D12 Rev. E, OPT-16 Rev. E, OPT-32-24V Rev. E, PWM-16(-I) Rev. E, PWM-16(-I) Rev. E, REL-16 Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E, TRA-16 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 24 Rem alle anderen Kanäle deaktivieren P2_Sync_Enable(1,1) P2_Sync_Enable(2,1) EndIf 'Index initialisieren Event: Rem Werte in Ausgangsregister schreiben P2_Write_DAC(1,1,Data_1[i]) P2_Write_DAC(2,1,Data_2[i]) Rem Ausgabe auf Modulen 1+2 synchron starten P2_Sync_All(11b) (i=1000) Then End 'Ende nach 1000 Durchläufen Inc(i) 'Index erhöhen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 25: Pro Ii: Digitalkanäle Der Cpu

    Dieser Abschnitt beschreibt Befehle für die Digitalein- und -ausgänge an CPU-Modu- len: – CPU_Digin (Seite – CPU_Digout (Seite – CPU_Dig_IO_Config (Seite – CPU_Event_Config (Seite Die Befehlsübersicht nach Modulen (Anhang A.2) zeigt, welche Befehle für einen Modultyp anwendbar sind. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 26 Rem Beide DIG I/O Kanäle als Eingang mit steigender Flanke Rem einstellen CPU_Dig_IO_Config(100010b) Rem Statusmeldung an DIG I/O 1 lesen und dadurch zurücksetzen dummy = CPU_Digin(1) Event: Rem … If(CPU_Digin(1) = Then 'Bei steigender Flanke … '… das Programm beenden EndIf Rem … ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 27 Siehe auch CPU_Digin, CPU_Dig_IO_Config Gültig für CPU-T11, CPU-T12 Beispiel #Include ADwinPro_All.Inc Init: Rem DIG I/O-0 und DIG I/O-1 als Ausgang einstellen CPU_Dig_IO_Config(110011b) Event: Rem … CPU_Digout(1,0) 'DIG I/O 1 auf TTL-Pegel low setzen Rem … ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 28 As Long Init: Rem DIG I/O-0 als Eingang mit steigender Flanke einstellen, Rem DIG I/O-1 als Ausgang CPU_Dig_IO_Config(110010b) Rem Statusmeldung an DIG I/O 0 lesen und dadurch zurücksetzen dummy = CPU_Digin(0) Rem … ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 29 Rem Eingang EVENT IN konfigurieren für Rem Mindestzeit 15 ns, neg. Flanken, 4 Flanken CPU_Event_Config(0,2,4) Event: Rem Event-gesteuerter Prozess startet jeweils, wenn 4 negative Rem Flanken am Eingang EVENT IN angelegen haben. Rem … ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 30: Pro Ii: Multi-I/O

    P2_MIO_Dig_Read_Latch (Seite – P2_MIO_Dig_Write_Latch (Seite – P2_MIO_Digin_Long (Seite – P2_MIO_Digout (Seite – P2_MIO_Digout_Long (Seite – P2_MIO_DigProg (Seite – P2_MIO_Get_Digout_Long (Seite Die Befehlsübersicht nach Modulen (Anhang A.2) zeigt, welche Befehle für einen Modultyp anwendbar sind. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 31 Init: Rem Kanäle 0…3 als Ausgang setzen, 4…7 als Eingang P2_MIO_Digprog(1,0011b) P2_MIO_Dig_Write_Latch(1,0)'Alle Ausgangs-Bits auf 0 setzen Event: Rem Eingänge latchen, Inhalt des Ausgangs-Latches ausgeben P2_MIO_Dig_Latch(1) Par_1 P2_MIO_Dig_Read_Latch(1)'Eingangsbits einlesen und … P2_MIO_Dig_Write_Latch(1,Par_1)'beim nächsten Event ausgeben ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 32 Rem Kanäle 7:0 der Module 1+2 als Eingänge setzen P2_MIO_Digprog(1,00b) P2_MIO_Digprog(2,00b) Event: Rem Pegel an den digitalen Eingängen von beiden Modulen synchron Rem in die Zwischenregister übernehmen P2_Sync_All(11b) Par_1 P2_MIO_Dig_Read_Latch(1)'Latch von Modul 1 lesen Par_2 P2_MIO_Dig_Read_Latch(2)'Latch von Modul 2 lesen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 33 Gültig für MIO-4 Rev. E, MIO-4-ET1 Rev. E, MIO-D12 Rev. E Beispiel #Include ADwinPro_All.inc Init: P2_MIO_Digprog(1,11b) 'Kanäle 7:0 des Moduls als Ausgang Event: Rem Informationen des Ausgangs-Latches ausgeben P2_MIO_Dig_Latch(1) Rem Long-Word ins Ausgangs-Latch schreiben P2_MIO_Dig_Write_Latch(1,Par_1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 34 Eingänge zu programmieren; davon ausgenommen sind P2_MIO_DigProg OPT-Kanäle. Siehe auch P2_MIO_Dig_Latch, P2_MIO_DigProg, P2_MIO_Digout_Long Gültig für MIO-4 Rev. E, MIO-4-ET1 Rev. E, MIO-D12 Rev. E Beispiel #Include ADwinPro_All.inc Init: P2_MIO_Digprog(1,00b) 'Kanäle 7:0 als Eingang Event: Par_1 P2_MIO_Digin_Long(1)'Alle Eingänge einlesen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 35 Rem Kanäle 0…3 als Eingang, 4…7 als Ausgang P2_MIO_Digprog(1,10b) Event: Rem Eingangsbits einlesen und prüfen, ob Kanal 3 gesetzt ist (P2_MIO_Digin_Long(1) 100b = 100b) Then P2_MIO_Digout(1,5,0) 'Kanal 3 gesetzt: Bit 5 löschen Else P2_MIO_Digout(1,5,1) 'Kanal 3 gelöscht: Bit 5 setzen EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 36 Siehe auch P2_MIO_Digout, P2_MIO_DigProg Gültig für MIO-4 Rev. E, MIO-4-ET1 Rev. E, MIO-D12 Rev. E Beispiel #Include ADwinPro_All.inc Init: P2_MIO_Digprog(1, 11b) 'Kanäle 7:0 als Ausgang Event: P2_MIO_Digout_Long(1,128)'Den Wert 128 als Binärwert 'auf die Digitalkanäle ausgeben ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 37 P2_MIO_Digin_Long, P2_MIO_Digout, P2_MIO_Digout_Long, P2_MIO_Get_ Digout_Long Gültig für MIO-4 Rev. E, MIO-4-ET1 Rev. E Beispiel #Include ADwinPro_All.inc Init: Rem Kanäle 0…3 des Moduls Nr. 1 als Eingang konfiguieren Rem und Kanäle 4…7 als Ausgang P2_MIO_Digprog(1, 10b) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 38 Siehe auch P2_MIO_Dig_Latch, P2_MIO_Dig_Read_Latch, P2_MIO_Dig_Write_Latch, P2_MIO_DigProg, P2_MIO_Digin_Long, P2_MIO_Digout, P2_MIO_Digout_ Long Gültig für MIO-4 Rev. E, MIO-4-ET1 Rev. E, MIO-D12 Rev. E Beispiel #Include ADwinPro_All.inc Event: Rem Bits 31:0 aus dem Latch zurücklesen Par_1 = P2_MIO_Get_Digout_Long(1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 39: Pro Ii: Analoge Eingänge

    P2_Burst_Init (Seite – P2_Burst_Read_Index (Seite – P2_Burst_Read (Seite – P2_Burst_Read_Unpacked1 (Seite – P2_Burst_Read_Unpacked2 (Seite – P2_Burst_Read_Unpacked4 (Seite – P2_Burst_Read_Unpacked8 (Seite – P2_Burst_Reset (Seite – P2_Burst_Start (Seite – P2_Burst_Status (Seite – P2_Burst_Stop (Seite – P2_Set_Average_Filter (Seite ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 40 119) – P2_Read_ADCF_SConv32 (Seite 120) – P2_Set_Gain (Seite 121) – P2_Start_ConvF (Seite 122) – P2_Wait_EOCF (Seite 123) Die Befehlsübersicht nach Modulen (Anhang A.2 Befehlsübersicht nach Modulen) zeigt, welche Befehle für einen Modultyp anwendbar sind. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 41 Co Rev. E, AIn-8/18 Rev. E, AIn-8/18-8B Rev. E, AIn-8/18-TiCo Rev. E, MIO-4 Rev. E, MIO-4-ET1 Rev. E Beispiel #Include ADwinPro_All.Inc #Define value Par_1 Event: Rem 16Bit-Wert am analogen Eingang 4 messen value = P2_ADC(1, 4) FPar_1 (value - 8000h) * 10000h 'Wert in Volt ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 42 Co Rev. E, AIn-8/18 Rev. E, AIn-8/18-8B Rev. E, AIn-8/18-TiCo Rev. E, MIO-4 Rev. E, MIO-4-ET1 Rev. E Beispiel #Include ADwinPro_All.inc #Define value Par_1 Event: Rem 24Bit-Wert am analogen Eingang 4 messen value = P2_ADC24(1, 4) FPar_1 (value - 800000h) * 1000000h 'Wert in Volt ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 43 Siehe auch P2_ADC, P2_ADC24, P2_ADC_Set_Limit Gültig für AIn-16/18-8B Rev. E, AIn-16/18-C Rev. E, AIn-32/18-D Rev. E, AIn-32/18-D-Ti- Co Rev. E, AIn-8/18 Rev. E, AIn-8/18-8B Rev. E, AIn-8/18-TiCo Rev. E, MIO-4 Rev. E, MIO-4-ET1 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 44 = P2_ADC_Read_Limit(module,1) 'Flags 1…16 lesen ((flags 10b) = 10b) Then Rem Untergrenze auf Kanal 2 ist unterschritten Par_1 EndIf ((flags 20000h) = 20000h) Then Rem Obergrenze auf Kanal 2 ist überschritten Par_2 EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 45 = P2_ADC_Read_Limit(module,1) 'Flags 1…16 lesen ((flags 10b) = 10b) Then Rem Untergrenze auf Kanal 2 ist unterschritten Par_1 EndIf ((flags 20000h) = 20000h) Then Rem Obergrenze auf Kanal 2 ist überschritten Par_2 EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 46 Rev. E, MIO-4-ET1 Rev. E Beispiel #Include ADwinPro_All.Inc value1 As Long 'Deklaration Init: P2_Set_Mux(1,0100000010b)'MUX auf Eing. 3, Verstärkung 2 setzen Event: P2_Start_Conv(1) 'Start AD-Wandlung P2_Wait_EOC(1) 'Warten auf Wandlung-Ende value1 = P2_Read_ADC(1) 'Wert vom ADC einlesen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 47 Co Rev. E, AIn-8/18 Rev. E, AIn-8/18-8B Rev. E, AIn-8/18-TiCo Rev. E, MIO-4 Rev. E, MIO-4-ET1 Rev. E Beispiel #Include ADwinPro_All.Inc value1 As Long 'Deklaration Init: P2_Set_Mux(1,0100000010b)'MUX auf Eing. 3, Verstärkung 2 setzen Event: P2_Start_Conv(1) 'Start AD-Wandlung P2_Wait_EOC(1) 'Warten auf Wandlung-Ende value1 P2_Read_ADC24(1)'24Bit-Wert vom ADC einlesen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 48 P2_Set_Mux(1,0100000010b)'MUX auf Eing. 3, Verstärkung 2 setzen Rem Einschwingen des Multiplexers abwarten, hier 4 µs P2_Sleep(400) P2_Start_Conv(1) 'A/D-Wandler starten Event: P2_Wait_EOC(1) Data_1[i] = P2_Read_ADC_SConv(1)'A/D-Wandler auslesen+starten Inc(i) 'Index erhöhen (i=1001) Then End 'Nach 1000 Messwerten Prozess beenden ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 49 P2_Set_Mux(1,0100000010b)'MUX auf Eing. 3, Verstärkung 2 setzen Rem Einschwingen des Multiplexers abwarten, hier 4 µs P2_Sleep(400) P2_Start_Conv(1) 'A/D-Wandler starten Event: P2_Wait_EOC(1) Data_1[i] = P2_Read_ADC_SConv24(1)'A/D-Wandler 24 Bit 'auslesen + starten 'Index erhöhen Inc(i) (i=1001) Then End 'Nach 1000 Messwerten Prozess beenden ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 50 AIn-16/18-8B Rev. E, AIn-16/18-C Rev. E, AIn-32/18-D Rev. E, AIn-32/18-D-Ti- Co Rev. E, MIO-4 Rev. E, MIO-4-ET1 Rev. E Beispiel #Include ADwinPro_All.Inc Init: 'Modul mit der Adresse 1 wird P2_SE_Diff(1,0) 'auf SE gesetzt P2_SE_Diff(2,1) 'Modul mit der Adresse 2 wird 'auf DIFF gesetzt ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 51 Befehl. Das Wandlungsende (für Seq_Start alle Kanäle) wird automatisch mit dem Beginn des nächsten Prozesszyklus synchronisiert. Daher können – und sollten auch – alle Messwerte bereits zu Beginn des Prozesszyklus gelesen werden. P2_Seq_Read ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 52 P2_ADC, P2_Seq_Read, P2_Seq_Read24, P2_Seq_Read_Packed, P2_Seq_ Start, P2_Seq_Wait Gültig für AIn-16/18-8B Rev. E, AIn-16/18-C Rev. E, AIn-32/18-D Rev. E, AIn-32/18-D-Ti- Co Rev. E, AIn-8/18 Rev. E, AIn-8/18-8B Rev. E, AIn-8/18-TiCo Rev. E, MIO-4 Rev. E, MIO-4-ET1 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 53 Rem Verstärkungsfaktor 1(-10V..+10V / -20mA..+20mA), Rem Kanäle 2,4,6,8, Standard-Einschwingzeit P2_Seq_Init(module, 2, 0, 0AAh, 0) Rem Messsequenzen auf dem Modul starten P2_Seq_Start(Shift_Left(1, module-1)) Event: Rem Messwerte lesen und in Data_1 kopieren P2_Seq_Read(module, 16, Data_1, 1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 54 Rem Ablaufsteuerung: Modus continuous max, Verstärkungsfaktor 1 Rem ungeradzahlige Kanäle, Standard-Einschwingzeit P2_Seq_Init(module,3,0,55555555h,0) P2_Seq_Start(Shift_Left(1, module-1))'Messsequenzen starten P2_Seq_Wait(module) 'Warten, bis einmal alle angegebenen 'Kanäle gemessen wurden Event: Rem Aktuelle Messwerte von dem Modul in Data_1 umkopieren P2_Seq_Read(module,16,Data_1,1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 55 P2_Seq_Init, P2_Seq_Read, P2_Seq_Read_Packed, P2_Seq_Start, P2_Seq_ Wait Gültig für AIn-16/18-8B Rev. E, AIn-16/18-C Rev. E, AIn-32/18-D Rev. E, AIn-32/18-D-Ti- Co Rev. E, AIn-8/18 Rev. E, AIn-8/18-8B Rev. E, AIn-8/18-TiCo Rev. E, MIO-4 Rev. E, MIO-4-ET1 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 56 Rem Ablaufsteuerung: Modus continuous max, Verstärkungsfaktor 1 Rem ungeradzahlige Kanäle, Standard-Einschwingzeit P2_Seq_Init(module,3,0,55555555h,0) P2_Seq_Start(Shift_Left(1, module-1))'Messsequenzen starten P2_Seq_Wait(module) 'Warten, bis einmal alle angegebenen 'Kanäle gemessen wurden Event: Rem Aktuelle Messwerte von dem Modul in Data_1 umkopieren P2_Seq_Read24(module,16,Data_1,1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 57 Rem kungsfaktor 1, geradzahlige Kanäle (2…16) des Moduls, Rem Standard-Einschwingzeit P2_Seq_Init(1,3,0,0AAAAh,0) P2_Seq_Init(5,3,0,0AAAAh,0) P2_Seq_Start(10001b) 'Messsequenz auf Modulen 1+5 starten P2_Seq_Wait(1) 'Warten, bis alle angegebenen 'Kanäle einmal gemessen wurden Event: Rem 16 Messwerte holen und in Data_1, Data_2 kopieren P2_Seq_Read_Packed(1,8,Data_1,1) P2_Seq_Read_Packed(5,8,Data_2,1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 58 Rem Verstärkungsfaktor 1, alle Kanäle des Moduls, Rem Standard-Einschwingzeit P2_Seq_Init(module,1,0,0FFFFFFFFh,0) P2_Seq_Start(Shift_Left(1,module-1)) 'Messsequenz starten Event: P2_Seq_Wait(module) 'Ende der Messung abwarten P2_Seq_Read(module,32,Data_1,1) 'Alle 32 Kanäle einlesen ... Rem Digit in Volt umrechnen und speichern Data_1[i] = (Data_1[i]-32768)*20/65536 Next P2_Seq_Start(Shift_Left(1,module-1)) 'Messsequenz starten ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 59 Rem Verstärkungsfaktor 1, Anzahl Messkanäle als Bitmuster, Rem Standard-Einschwingzeit P2_Seq_Init(module,1,0,(2^channels-1),0) P2_Seq_Start(Shift_Left(1,module-1)) 'Messsequenz starten Event: P2_Seq_Wait(module)'Ende der Messung abwarten P2_Seq_Read(module,channels,Data_1,1) 'diff. Kanäle einlesen channels Rem Digit in Volt umrechnen und speichern Data_2[i] = (Data_1[i]-32768)*20/65536 Next P2_Seq_Start(Shift_Left(1,module-1)) 'Messsequenz starten ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 60 As Long 'Deklaration Init: P2_Set_Mux(1,0100000010b)'MUX auf Eing. 3, Verstärkung 2 setzen Rem Einschwingen des Multiplexers abwarten, hier 4 µs P2_Sleep(400) Event: 'Start AD-Wandlung P2_Start_Conv(1) P2_Wait_EOC(1) 'Warten auf Wandlung-Ende value1 = P2_Read_ADC(1) 'Wert vom ADC einlesen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 61 P2_Set_Mux(1,0100000010b)'MUX auf Eing. 3, Verstärkung 2 setzen Rem Einschwingen des Multiplexers abwarten, hier 4 µs P2_Sleep(400) Event: P2_Start_Conv(1) 'Start AD-Wandlung auf Kanal 1 P2_Wait_EOC(1) 'Warten auf Wandlung-Ende value = P2_Read_ADC(1) 'Wert vom ADC einlesen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 62 P2_Set_Mux(1,0100000010b)'MUX auf Eing. 3, Verstärkung 2 setzen Rem Einschwingen des Multiplexers abwarten, hier 4 µs P2_Sleep(400) Event: P2_Start_Conv(1) 'Start AD-Wandlung P2_Wait_EOC(1) 'Warten auf das Ende der Konvertierung value = P2_Read_ADC(1) 'Wert vom ADC einlesen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 63 'set MUX to input 1, gain 1 'wait for end of conversion P2_Wait_EOC(module) Par_2 = P2_Read_ADC(module) 'read channel value 2 from the ADC P2_Wait_Mux(module) 'wait for end of settling time P2_Start_Conv(module) 'start AD conversion ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 64 Prozess mit höherer Priorität auf seine Bearbeitung warten muss. Siehe auch P2_Burst_Init, P2_Burst_CRead_Unpacked2, P2_Burst_CRead_Unpacked4, P2_Burst_CRead_Unpacked8, P2_Burst_Start, P2_Burst_Status Gültig für AIn-F-4/14 Rev. E, AIn-F-4/16 Rev. E, AIn-F-8/14 Rev. E, AIn-F-8/16 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 65 Rem (Fx14) Periodendauer, 2^26 Daten speichern ab Adresse 0. P2_Burst_Init (module,1,0,67108864,25,010b) Rem Burst-Messreihe starten pattern = Shift_Left(1,module-1) 'nur ein Modul ansprechen P2_Burst_Start(pattern) Processdelay=10000000 Event: Rem Die letzten 1000 Messwerte des Kanals (langsam) lesen und in Rem Data_1 ablegen P2_Burst_CRead_Unpacked1(module,1000,Data_1,1,1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 66 Prozess mit höherer Priorität auf seine Bearbeitung warten muss. Siehe auch P2_Burst_Init, P2_Burst_CRead_Unpacked1, P2_Burst_CRead_Unpacked4, P2_Burst_CRead_Unpacked8, P2_Burst_Start, P2_Burst_Status Gültig für AIn-F-4/14 Rev. E, AIn-F-4/16 Rev. E, AIn-F-8/14 Rev. E, AIn-F-8/16 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 67 (module,3,0,67108860,32,010b) Rem Burst-Messureihe starten pattern = Shift_Left(1,module-1) 'nur ein Modul ansprechen P2_Burst_Start(pattern) P2_Set_LED(module,1) Processdelay=1000000 Event: Rem Die letzten 1000 Messwerte je Kanal (langsam) lesen und in Rem den Feldern Data_1 bis Data_2 ablegen P2_Burst_CRead_Unpacked2(module,1000,Data_1,Data_2,1,1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 68 Prozess mit höherer Priorität auf seine Bearbeitung warten muss. Siehe auch P2_Burst_Init, P2_Burst_CRead_Unpacked1, P2_Burst_CRead_Unpacked2, P2_Burst_CRead_Unpacked8, P2_Burst_Start, P2_Burst_Status Gültig für AIn-F-4/14 Rev. E, AIn-F-4/16 Rev. E, AIn-F-8/14 Rev. E, AIn-F-8/16 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 69 (module,15,0,3355444,32,010b) Rem Burst-Messureihe starten pattern = Shift_Left(1,module-1) 'nur ein Modul ansprechen P2_Burst_Start(pattern) Processdelay=50000000 Event: Rem Die letzten 1000 Messwerte je Kanal (schnell) lesen und in Rem den Feldern Data_1 bis Data_4 ablegen P2_Burst_CRead_Unpacked4(module,1000,Data_1,Data_2,Data_3, Data_4,1,3) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 70 Je höher Sie – bei einem niederprioren Prozess – den Datendurchsatz wählen, umso eher kann es vorkommen, dass ein Prozess mit höherer Priorität auf seine Bearbeitung warten muss. Siehe auch P2_Burst_Init, P2_Burst_CRead_Unpacked1, P2_Burst_CRead_Unpacked2, P2_Burst_CRead_Unpacked4, P2_Burst_Start, P2_Burst_Status Gültig für AIn-F-8/14 Rev. E, AIn-F-8/16 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 71 (module,255,100,1000000,25,010b) Rem Burst-Messureihe starten pattern = Shift_Left(1,module-1) 'nur ein Modul ansprechen P2_Burst_Start(pattern) Processdelay=10000000 Event: Rem Die letzten 10000 Messwerte je Kanal (langsam) lesen und in Rem den Feldern Data_1 bis Data_8 ablegen P2_Burst_CRead_Unpacked8(module,1000,Data_1,Data_2,Data_3, Data_4,Data_5,Data_6,Data_7,Data_8,1,3) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 72 Je höher Sie – bei einem niederprioren Prozess – den Datendurchsatz wählen, umso eher kann es vorkommen, dass ein Prozess mit höherer Priorität auf seine Bearbeitung warten muss. Siehe auch ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 73 ADwin Pro II: Eingangsmodule P2_Burst_CRead_Pos_Unpacked1 P2_Burst_Init, P2_Burst_CRead_Unpacked1, P2_Burst_CRead_Pos_ Unpacked2, P2_Burst_CRead_Pos_Unpacked4, P2_Burst_CRead_Pos_ Unpacked8, P2_Burst_Start, P2_Burst_Status Gültig für AIn-F-4/14 Rev. E, AIn-F-4/16 Rev. E, AIn-F-8/14 Rev. E, AIn-F-8/16 Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 74 Je höher Sie – bei einem niederprioren Prozess – den Datendurchsatz wählen, umso eher kann es vorkommen, dass ein Prozess mit höherer Priorität auf seine Bearbeitung warten muss. Siehe auch ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 75 ADwin Pro II: Eingangsmodule P2_Burst_CRead_Pos_Unpacked2 P2_Burst_Init, P2_Burst_CRead_Unpacked2, P2_Burst_CRead_Pos_ Unpacked1, P2_Burst_CRead_Pos_Unpacked4, P2_Burst_CRead_Pos_ Unpacked8, P2_Burst_CRead_Pos_Unpacked8, P2_Burst_Start, P2_Burst_ Status Gültig für AIn-F-4/14 Rev. E, AIn-F-4/16 Rev. E, AIn-F-8/14 Rev. E, AIn-F-8/16 Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 76 Je höher Sie – bei einem niederprioren Prozess – den Datendurchsatz wählen, umso eher kann es vorkommen, dass ein Prozess mit höherer Priorität auf seine Bearbeitung warten muss. Siehe auch ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 77 ADwin Pro II: Eingangsmodule P2_Burst_CRead_Pos_Unpacked4 P2_Burst_Init, P2_Burst_CRead_Unpacked4, P2_Burst_CRead_Pos_ Unpacked1, P2_Burst_CRead_Pos_Unpacked2, P2_Burst_CRead_Pos_ Unpacked8, P2_Burst_Start, P2_Burst_Status Gültig für AIn-F-4/14 Rev. E, AIn-F-4/16 Rev. E, AIn-F-8/14 Rev. E, AIn-F-8/16 Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 78 Je höher Sie – bei einem niederprioren Prozess – den Datendurchsatz wählen, umso eher kann es vorkommen, dass ein Prozess mit höherer Priorität auf seine Bearbeitung warten muss. Siehe auch ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 79 ADwin Pro II: Eingangsmodule P2_Burst_CRead_Pos_Unpacked8 P2_Burst_Init, P2_Burst_CRead_Unpacked8, P2_Burst_CRead_Pos_ Unpacked1, P2_Burst_CRead_Pos_Unpacked2, P2_Burst_CRead_Pos_ Unpacked4, P2_Burst_Start, P2_Burst_Status Gültig für AIn-F-8/14 Rev. E, AIn-F-8/16 Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 80 Speicherabschnitt; die Anzahl bestimmt die Größe des count Speicherabschnitts. Der Maximalwert für wird durch buffer_count (und die Startadresse) bestimmt. Die Anzahl channels muss durch 4 teilbar sein, bei channels=1 (1 Kanal) durch 8 teilbar. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 81 Periodendauer. Sie brechen die Messreihe mit ab und lesen mit die Messwerte aus. Burst_Stop P2_Burst_CRead_… Das Modul speichert die Messwerte im (mit P2_Burst_Init) reservierten Speicherabschnitt in einem Ringspeicher, d.h. die jüngsten Messwerte überschreiben die jeweils ältesten Daten. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 82 REM Start burst sequence pattern = Shift_Left(1, module-1) 'access single module only P2_Burst_Start(pattern) Processdelay 10000000 Event: REM Read last 1000 samples from channel (slowly) and store REM in Data_1 P2_Burst_CRead_Unpacked1(module, 1000, Data_1, 1, 1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 83 Messmodus ab. Näheres über die Zuordnung siehe P2_Burst_ Read. Siehe auch P2_Burst_Init, P2_Burst_Read, P2_Burst_Read_Unpacked1, P2_Burst_ Read_Unpacked2, P2_Burst_Read_Unpacked4, P2_Burst_Read_Unpacked8, P2_Burst_Reset, P2_Burst_Start, P2_Burst_Status, P2_Read_ADC Gültig für AIn-F-4/14 Rev. E, AIn-F-4/16 Rev. E, AIn-F-8/14 Rev. E, AIn-F-8/16 Rev. E Beispiel ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 84 Data_1, Data_2, Data_3, Data_4, start_idx, 0) Rem Start-Index im Data für den nächsten Zyklus start_idx Rem Index im F8/14 Modul für den nächsten Zyklus prev_mem_idx Inc(overflow) 'Überlaufzähler erhöhen EndIf Finish: P2_Set_LED(module, 0) 'LED ausschalten ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 85 +1 K2 / M2 K1 / M2 startadr startadr +2 K1 / M6 K1 / M5 +2 K2 / M3 K1 / M3 startadr startadr … … … … … … Anzahl Kanäle: 1 Anzahl Kanäle: 2 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 86 Prozess mit höherer Priorität auf seine Bearbeitung warten muss. Siehe auch P2_Burst_Init, P2_Burst_Read_Index, P2_Burst_Read_Unpacked1, Burst_Read_Unpacked2, P2_Burst_Read_Unpacked4, P2_Burst_Read_ Unpacked8, P2_Burst_Start, P2_Burst_Status, P2_Burst_Stop, P2_Read_ADC Gültig für AIn-F-4/14 Rev. E, AIn-F-4/16 Rev. E, AIn-F-8/14 Rev. E, AIn-F-8/16 Rev. E Beispiel ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 87 Rem Messwerte aus dem Modulspeicher lesen P2_Burst_Read(module,count,prev_mem_idx,Data_1,start_idx,0) Rem Start-Index in Data_1 für den nächsten Zyklus start_idx prev_mem_idx 'Index im Buffer merken Inc(overflow) 'Überlaufzähler erhöhen EndIf Rem Messwerte liegen gepackt im Feld Data_1 Finish: P2_Set_LED(module, 0) 'LED ausschalten ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 88 Prozess mit höherer Priorität auf seine Bearbeitung warten muss. Siehe auch P2_Burst_Init, P2_Burst_Read_Unpacked2, P2_Burst_Read_Unpacked4, Burst_Read_Unpacked8, P2_Burst_Reset, P2_Burst_Start, P2_Burst_Status Gültig für AIn-F-4/14 Rev. E, AIn-F-4/16 Rev. E, AIn-F-8/14 Rev. E, AIn-F-8/16 Rev. E Beispiel ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 89 Rem Alle Messwerte liegen vor: Status ändern (rest=0) Then state=1 (state=1) Then Rem Alle Messwerte liegen vor: 1000 Messwerte (schnell) Rem abholen und in Data_1 ablegen P2_Burst_Read_Unpacked1(module,1000,0,Data_1,1,3) Rem Nächste Burst-Messreihe starten state=0 P2_Burst_Reset(pattern) P2_Burst_Start(pattern) EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 90 Prozess mit höherer Priorität auf seine Bearbeitung warten muss. Siehe auch P2_Burst_Init, P2_Burst_Read_Unpacked1, P2_Burst_Read_Unpacked4, Burst_Read_Unpacked8, P2_Burst_Reset, P2_Burst_Start, P2_Burst_Status Gültig für AIn-F-4/14 Rev. E, AIn-F-4/16 Rev. E, AIn-F-8/14 Rev. E, AIn-F-8/16 Rev. E Beispiel ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 91 = 0) Then state=1 (state = 1) Then Rem Alle Messwerte liegen vor: Von jedem Kanal 1000 Messwerte Rem (schnell) abholen und in Data_1 ablegen P2_Burst_Read_Unpacked2(module,1000,0,Data_1,Data_2,1,3) Rem Nächste Burst-Messreihe starten state=0 P2_Burst_Reset(pattern) P2_Burst_Start(pattern) EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 92 Prozess mit höherer Priorität auf seine Bearbeitung warten muss. Siehe auch P2_Burst_Init, P2_Burst_Read_Unpacked1, P2_Burst_Read_Unpacked2, Burst_Read_Unpacked8, P2_Burst_Reset, P2_Burst_Start, P2_Burst_Status Gültig für AIn-F-4/14 Rev. E, AIn-F-4/16 Rev. E, AIn-F-8/14 Rev. E, AIn-F-8/16 Rev. E Beispiel ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 93 Rem Alle Messwerte liegen vor: Status ändern (rest=0) Then state=1 (state=1) Then Rem Alle Messwerte liegen vor:Von jedem Kanal 1000 Messwerte Rem (schnell) abholen und in Data_1 bis Data_4 ablegen P2_Burst_Read_Unpacked4(module,1000,0,Data_1,Data_2,Data_3, Data_4,1,3) Rem Nächste Burst-Messreihe starten state=0 P2_Burst_Reset(pattern) P2_Burst_Start(pattern) EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 94 Prozess mit höherer Priorität auf seine Bearbeitung warten muss. Siehe auch P2_Burst_Init, P2_Burst_Read_Unpacked1, P2_Burst_Read_Unpacked2, Burst_Read_Unpacked4, P2_Burst_Reset, P2_Burst_Start, P2_Burst_Status Gültig für AIn-F-8/14 Rev. E, AIn-F-8/16 Rev. E Beispiel ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 95 Rem Alle Messwerte liegen vor: Status ändern (rest=0) Then state=1 (state=1) Then Rem Alle Messwerte liegen vor: 1000 Messwerte je Kanal Rem (schnell) abholen und in Data_1 bis Data_8 ablegen P2_Burst_Read_Unpacked8(module,1000,0,Data_1,Data_2,Data_3, Data_4,Data_5,Data_6,Data_7,Data_8,1,3) Rem Nächste Burst-Messreihe starten state=0 P2_Burst_Reset(pattern) P2_Burst_Start(pattern) EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 96 Startadresse gespeichert. P2_Burst_Init Der Datenzeiger kann mit gelesen werden. P2_Burst_Read_Index Siehe auch P2_Burst_Init, P2_Burst_Read_Index, P2_Burst_CRead_Unpacked1, Burst_CRead_Unpacked2, P2_Burst_CRead_Unpacked4, P2_Burst_CRead_ Unpacked8, P2_Burst_Status, P2_Burst_Stop Gültig für AIn-F-4/14 Rev. E, AIn-F-4/16 Rev. E, AIn-F-8/14 Rev. E, AIn-F-8/16 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 97 Rem Alle Messwerte liegen vor: Status ändern (rest=0) Then state=1 (state=1) Then Rem Alle Messwerte liegen vor: 1000 Messwerte (schnell) Rem abholen und in Data_1 ablegen P2_Burst_Read_Unpacked1(module,1000,0,Data_1,1,3) Rem Nächste Burst-Messreihe starten state=0 P2_Burst_Reset(pattern) P2_Burst_Start(pattern) EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 98 Rem Periodendauer, 2^26 Daten speichern ab Adresse 0. P2_Burst_Init (module,1,0,67108864,30,010b) Rem Burst-Messreihe starten pattern = Shift_Left(1,module-1) 'nur ein Modul ansprechen P2_Burst_Start(pattern) Processdelay=10000000 Event: Rem Die letzten 1000 Messwerte des Kanals (langsam) lesen und in Rem Data_1 ablegen P2_Burst_CRead_Unpacked1(module,1000,Data_1,1,1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 99 = 0) Then state 1'Alle Messwerte liegen vor (state = 1) Then Rem Alle Messwerte liegen vor: 1000 Messwerte (schnell) Rem abholen und in Data_1 ablegen P2_Burst_Read_Unpacked1(module,1000,0,Data_1,1,3) Rem Nächste Burst-Messreihe starten state P2_Burst_Reset(pattern) P2_Burst_Start(pattern) EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 100 'nur ein Modul ansprechen P2_Burst_Start(pattern) Processdelay 10000000 Event: Rem Die letzten 1000 Messwerte des Kanals (langsam) lesen und in Rem Data_1 ablegen P2_Burst_CRead_Unpacked1(module,1000,Data_1,1,1) Rem Burst-Messreihe unterbrechen, wenn Grenzwert überschritten 1000 (Data_1[i] > 5) Then P2_Burst_Stop(pattern) Next ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 101 Siehe auch P2_Burst_Init, P2_Burst_Read_Unpacked1, P2_Burst_CRead_Unpacked1, P2_Read_ADC Gültig für AIn-F-4/14 Rev. E, AIn-F-4/16 Rev. E, AIn-F-8/14 Rev. E, AIn-F-8/16 Rev. E Beispiel #Include ADwinPro_All.Inc Init: Rem Mittelwert aus den 2 zuletzt gewandelten Messwerten bilden P2_Set_Average_Filter(1,1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 102: Pro Ii: Eingangsmodule

    AIn-F-4/14 Rev. E, AIn-F-4/16 Rev. E, AIn-F-4/18 Rev. E, AIn-F-8/14 Rev. E, AIn-F-8/16 Rev. E, AIn-F-8/18 Rev. E Beispiel #Include ADwinPro_All.Inc #Define value Par_1 Event: Rem 16Bit-Wert am analogen Eingang 4 messen value = P2_ADCF(1, 4) FPar_1 (value - 8000h) * 10000h 'Wert in Volt ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 103 Gültig für AIn-F-4/18 Rev. E, AIn-F-8/18 Rev. E Beispiel #Include ADwinPro_All.Inc #Define value Par_1 Event: Rem 24Bit-Wert am analogen Eingang 4 messen value = P2_ADCF24(1, 4) FPar_1 (value - 800000h) * 1000000h 'Wert in Volt ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 104: Standard-Modus

    Timer-Modus mit Im Timer-Modus mit Multiplex-Option wandelt das Modul doppelt so schnell wie im einfachen Timer-Modus, jedoch nur mit der Hälfte der Kanäle. Das Prozes- Multiplex-Option sormodul liest und verarbeitet in jedem Prozesszyklus ein Messwertpaar. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 105 AIn-F-4/16 Rev. E, AIn-F-4/18 Rev. E, AIn-F-8/16 Rev. E, AIn-F-8/18 Rev. E Beispiel #Include ADwinPro_All.Inc value[4] As Long Init: Rem … P2_ADCF_Mode(1,1) 'Timer-Modus einschalten. 'Letzter Befehl im Abschnitt! Event: P2_Read_ADCF4(1, value, 1) 'Werte der ADC 1-4 einlesen Rem Werte verarbeiten ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 106 = P2_ADCF_Read_Limit(1) 'Flags lesen und rücksetzen Event: flags = P2_ADCF_Read_Limit(1) 'Flags lesen (flags = 10b) Then Rem Untergrenze ist unterschritten Rem … EndIf (flags 2000h = 2000h) Then Rem Obergrenze ist überschritten Rem … EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 107 = P2_ADCF_Read_Limit(1) 'Flags lesen und rücksetzen Event: flags = P2_ADCF_Read_Limit(1) 'Flags lesen (flags = 10b) Then Rem Untergrenze ist unterschritten Rem … EndIf (flags 20000h = 20000h) Then Rem Obergrenze ist überschritten Rem … EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 108 Bitnr. 15:8 F-ADC-Nr. – Bemerkungen Die Maximalwerte werden zurückgesetzt auf Null, die Minimalwerte auf 0FFFFh. Siehe auch P2_ADCF_Read_Min_Max4, P2_ADCF_Read_Min_Max8, P2_ADCF_Read_ Limit, P2_ADCF_Set_Limit Gültig für AIn-F-4/16 Rev. E, AIn-F-8/16 Rev. E Beispiel siehe P2_ADCF_Read_Min_Max8 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 109 Max. Kanal 2 array[n+3] Min. Kanal 3 array[n+4] Max. Kanal 3 array[n+5] Min. Kanal 4 array[n+6] Max. Kanal 4 array[n+7] Siehe auch P2_ADCF_Read_Min_Max8, P2_ADCF_Reset_Min_Max, P2_ADCF_Read_ Limit, P2_ADCF_Set_Limit Gültig für AIn-F-4/16 Rev. E, AIn-F-8/16 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 110 Rem read high and low values of F-ADC 1…4 P2_ADCF_Read_Min_Max4(module,Data_10,1) Step (Data_10[i] < 2500) Then Rem minimum is below limit Rem … P2_ADCF_Reset_Min_Max(module,1111b)'reset all 4 F-ADC EndIf (Data_10[i+1] > 50000) Then Rem value is above limit Rem … EndIf Next ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 111 Max. Kanal 7 array[n+5] array[n+13] Min. Kanal 4 Min. Kanal 8 array[n+6] array[n+14] Max. Kanal 4 Max. Kanal 8 array[n+7] array[n+15] Siehe auch P2_ADCF_Read_Min_Max4, P2_ADCF_Reset_Min_Max, P2_ADCF_Read_ Limit, P2_ADCF_Set_Limit Gültig für AIn-F-4/16 Rev. E, AIn-F-8/16 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 112 Rem read high and low values of F-ADC 1…8 P2_ADCF_Read_Min_Max8(module,Data_4,1) Step (Data_4[i] < 2500) Then Rem minimum is below limit Rem … P2_ADCF_Reset_Min_Max(module,11111111b)'reset all 8 F-ADC EndIf (Data_4[i+1] > 50000) Then Rem value is above limit Rem … EndIf Next ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 113 AIn-F-8/16 Rev. E, AIn-F-8/18 Rev. E Beispiel #Include ADwinPro_All.Inc value1 As Long Event: Rem Start AD-Wandlung; nicht erforderlich für AIn-F-8/14 P2_Start_ConvF(1,1) Rem Warten auf Wandlung-Ende; nicht erforderlich für AIn-F-8/14 P2_Wait_EOCF(1,1) value1 P2_Read_ADCF(1,1)'Wert vom ADC einlesen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 114 Read_Limit, P2_ADCF_Set_Limit, P2_Read_ADCF_SConv24, P2_Read_ ADCF4_24B, P2_Read_ADCF8_24B Gültig für AIn-F-4/18 Rev. E, AIn-F-8/18 Rev. E Beispiel #Include ADwinPro_All.Inc value1 As Long 'Deklaration Event: P2_Start_ConvF(1,1) 'Start AD-Wandlung P2_Wait_EOCF(1,1) 'Warten auf Wandlung-Ende value1 P2_Read_ADCF24(1,1)'24Bit-Wert vom ADC einlesen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 115 Rem Start AD-Wandlung Kanäle 1…4; nicht erfordl. für AIn-F-8/14 P2_Start_ConvF(1,0Fh) Event: Rem Warten auf Wandlung-Ende; nicht erforderlich für AIn-F-8/14 P2_Wait_EOCF(1,0Fh) P2_Read_ADCF4(1,value,1) 'Werte der ADC 1…4 lesen Rem Neue AD-Wandlung starten; nicht erforderlich für AIn-F-8/14 P2_Start_ConvF(1,0Fh) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 116 AIn-F-4/18 Rev. E, AIn-F-8/18 Rev. E Beispiel #Include ADWINPRO_ALL.Inc value[4] As Long 'Feld für Messwerte Init: P2_Start_ConvF(1,0Fh) 'Start AD-Wandlung Kanäle 1…4 Event: P2_Wait_EOCF(1,0Fh) 'Warten auf Wandlungsende P2_Read_ADCF4_24B(1,value,1)'Werte der ADC 1…4 lesen P2_Start_ConvF(1,0Fh) 'Neue AD-Wandlung starten ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 117 Rem Start AD-Wandlung Kanäle 1…8; nicht erfordl. für AIn-F-8/14 P2_Start_ConvF(1,0FFh) Event: Rem Warten auf Wandlung-Ende; nicht erforderlich für AIn-F-8/14 P2_Wait_EOCF(1,0FFh) P2_Read_ADCF8(1,value,1) 'Werte der ADC 1…8 lesen Rem Neue AD-Wandlung starten; nicht erforderlich für AIn-F-8/14 P2_Start_ConvF(1,0FFh) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 118 Gültig für AIn-F-8/18 Rev. E Beispiel #Include ADWINPRO_ALL.Inc value[8] As Long 'Feld für Messwerte Init: P2_Start_ConvF(1,0FFh) 'Start AD-Wandlung Kanäle 1…8 Event: P2_Wait_EOCF(1,0FFh) 'Warten auf Wandlungsende P2_Read_ADCF8_24B(1,value,1)'Werte der ADC 1…8 lesen P2_Start_ConvF(1,0FFh) 'Neue AD-Wandlung starten ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 119 Rem Start AD-Wandlung Kanäle 1…4; nicht erfordl. für AIn-F-8/14 P2_Start_ConvF(1,0Fh) Event: Rem Warten auf Wandlung-Ende; nicht erforderlich für AIn-F-8/14 P2_Wait_EOCF(1,0Fh) P2_Read_ADCF4_Packed(1,value,1)'Werte der ADC 1…4 lesen Rem Neue AD-Wandlung starten; nicht erforderlich für AIn-F-8/14 P2_Start_ConvF(1,0Fh) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 120 Rem Start AD-Wandlung Kanäle 1…8; nicht erfordl. für AIn-F-8/14 P2_Start_ConvF(1,0FFh) Event: Rem Warten auf Wandlung-Ende; nicht erforderlich für AIn-F-8/14 P2_Wait_EOCF(1,0FFh) P2_Read_ADCF8_Packed(1,value,1)'Werte der ADC 1…8 lesen Rem Neue AD-Wandlung starten; nicht erforderlich für AIn-F-8/14 P2_Start_ConvF(1,0FFh) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 121 AIn-F-8/16 Rev. E, AIn-F-8/18 Rev. E Beispiel #Include ADwinPro_All.Inc value1 As Long Event: Rem Start AD-Wandlung Kanäle 1,2; nicht erfordl. für AIn-F-8/14 P2_Start_ConvF(1,11b) Rem Warten auf Wandlung-Ende; nicht erforderlich für AIn-F-8/14 P2_Wait_EOCF(1,3) value1 P2_Read_ADCF32(1,1)'Wert von ADC1 und ADC2 einlesen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 122 Beispiel #Include ADwinPro_All.Inc As Long Data_1[1000] As Long 'Feld für Messwerte Init: P2_Start_ConvF(1,1) 'A/D-Wandler starten Event: P2_Wait_EOCF(1,1) Data_1[i] = P2_Read_ADCF_SConv(1,1)'A/D-Wandler auslesen + 'starten Inc(i) 'Index erhöhen (i=1001) Then End 'Nach 1000 Messwerten Prozess beenden ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 123 Beispiel #Include ADwinPro_All.Inc As Long Data_1[1000] As Long 'Deklaration Init: P2_Start_ConvF(1,1) 'A/D-Wandler starten Event: P2_Wait_EOCF(1,1) Data_1[i] = P2_Read_ADCF_SConv24(1,1)'A/D-Wandler 24 Bit 'auslesen + starten Inc(i) 'Index erhöhen (i=1001) Then End 'Nach 1000 Messwerten Prozess beenden ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 124 AIn-F-4/16 Rev. E, AIn-F-4/18 Rev. E, AIn-F-8/16 Rev. E, AIn-F-8/18 Rev. E Beispiel #Include ADwinPro_All.Inc value As Long 'Deklaration Init: P2_Start_ConvF(1,3) 'Start AD-Wandlung Event: P2_Wait_EOCF(1,3) 'Warten auf das Ende der Konvertierung value P2_Read_ADCF_SConv32(1,1)'Wert vom ADC1 und ADC2 'einlesen und die Wandlung 'beider ADC neu starten ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 125 AIn-F-4/16 Rev. E, AIn-F-8/16 Rev. E Beispiel #Include ADwinPRO_ALL.Inc #Define ainadr 'Moduladresse AIN Modul Init: Rem Spannungsbereich im Kanal 4 auf Betriebsart 1 stellen Rem Messbereich: +5V…-5V P2_Set_Gain(ainadr,4,1) Event: Par_1 = P2_ADCF(1,4) 'Misst einen Wert vom Kanal 4 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 126 AIn-F-4/16 Rev. E, AIn-F-4/18 Rev. E, AIn-F-8/16 Rev. E, AIn-F-8/18 Rev. E Beispiel #Include ADwinPro_All.Inc value As Long 'Deklaration Event: P2_Start_ConvF(1,1) 'Start AD-Wandlung auf Kanal 1 P2_Wait_EOCF(1,1) 'Warten auf Wandlung-Ende value P2_Read_ADCF(1,1)'Wert vom ADC einlesen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 127 AIn-F-4/16 Rev. E, AIn-F-4/18 Rev. E, AIn-F-8/16 Rev. E, AIn-F-8/18 Rev. E Beispiel #Include ADwinPro_All.Inc value As Long 'Deklaration Event: P2_Start_ConvF(1,1) 'Start AD-Wandlung P2_Wait_EOCF(1,1) 'Warten auf das Ende der Konvertierung value P2_Read_ADCF(1,1)'Wert vom ADC einlesen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 128: Pro Ii: Analoge Ausgänge

    – P2_DAC1_DIO (Seite 137) – P2_DAC_Ramp_Write (Seite 138) – P2_DAC_Ramp_Status (Seite 140) – P2_DAC_Ramp_Buffer_Free (Seite 142) – P2_DAC_Ramp_Stop (Seite 143) Die Befehlsübersicht nach Modulen (Anhang A.2) zeigt, welche Befehle für einen Modultyp anwendbar sind. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 129 AOut-8/16-TiCo Rev. E, MIO-4 Rev. E, MIO-4-ET1 Rev. E Beispiel Rem Digitaler P-Regler #Include ADwinPro_All.Inc #Define set_to Par_1 'Sollwert #Define gain Par_2 'Verstärkungsfaktor #Define Par_3 'Regelabweichung #Define actuate Par_4 'Stellgröße Event: set_to P2_ADC(1,1)'Regelabweichung berechnen actuate gain 'Stellgröße berechnen P2_DAC(1,1,actuate) 'Ausgabe der Stellgröße ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 130 'Sollwert in Digits #Define gain FPar_2 'Verstärkung deviation As Long input[4], output[4] As Long Event: P2_Read_ADCF4(1,input,1) '4 Eingangswerte lesen deviation setpoint input[i]'Regelabweichung berechnen output[i] = deviation gain 'Stellgröße berechnen Next P2_DAC4(2,output,1) '4 Stellgrößen ausgeben ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 131 As Long Event: P2_Read_ADCF4_Packed(1,input,1)'4 Eingangswerte lesen Rem Regelabweichung berechnen deviation1 setpoint - (input[i] 0FFFFh) deviation2 setpoint - (Shift_Right(input[i],16) 0FFFFh) Rem Stellgrößen berechnen und speichern output[i] = Shift_Left(deviation2*gain, 16) + deviation1*gain Next P2_DAC4_Packed(2,output,1)'4 Stellgrößen ausgeben ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 132 Par_1 'Sollwert in Digits #Definegain FPar_2 'Verstärkung deviation As Long input[8], output[8] As Long Event: P2_Read_ADCF8(1,input,1) '8 Eingangswerte lesen deviation setpoint input[i]'Regelabweichung berechnen output[i] = deviation gain 'Stellgröße berechnen Next '8 Stellgrößen ausgeben P2_DAC8(2,output,1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 133 As Long Event: P2_Read_ADCF8_Packed(1,input,1)'8 Eingangswerte lesen Rem Regelabweichung berechnen deviation1 setpoint - (input[i] 0FFFFh) deviation2 setpoint - (Shift_Right(input[i],16) 0FFFFh) Rem Stellgrößen berechnen und speichern output[i] = Shift_Left(deviation2*gain, 16) + deviation1*gain Next P2_DAC8_Packed(2,output,1)'8 Stellgrößen ausgeben ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 134 Rem Simultane Ausgabe von zwei verschiedenen Signalverläufen Rem auf den Ausgängen 1 und 2 eines D/A-Moduls #Include ADwinPro_All.Inc As Long Init: Event: P2_Write_DAC(1,1,i) 'Ausgaberegister DAC1 setzen P2_Write_DAC(1,2,65535-i)'Ausgaberegister DAC2 setzen P2_Start_DAC(1) 'Ausgabe auf allen DAC starten Inc(i) (i=65535) Then ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 135 ADwinPro_All.Inc As Long Data_1[1000], Data_2[1000], Data_3[1000] As Long Data_4[1000] As Long Init: Event: P2_Write_DAC(1,1,Data_1[i])'Ausgaberegister DAC1 setzen P2_Write_DAC(1,2,Data_2[i])'Ausgaberegister DAC2 setzen P2_Write_DAC(1,3,Data_3[i])'Ausgaberegister DAC3 setzen P2_Write_DAC(1,4,Data_4[i])'Ausgaberegister DAC4 setzen P2_Start_DAC(1) 'Ausgabe auf allen DAC starten Inc(i) (i>1000) Then ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 136 Rem abgelegt und können vor dem Programmstart vom PC übergeben Rem werden. #Include ADwinPro_All.Inc As Long Data_1[4000] As Long Init: Event: 'Ausgaberegister DAC 1...4 setzen P2_Write_DAC4(1,Data_1,(i-1)*4+i) P2_Start_DAC(1) 'Ausgabe auf allen DAC starten Inc(i) (i>1000) Then ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 137 Rem gepackt abgelegt und können vor dem Programmstart vom PC Rem übergeben werden. #Include ADwinPro_All.Inc As Long Data_1[4000] As Long Init: Event: 'Ausgaberegister DAC 1...4 setzen P2_Write_DAC4_Packed(1,Data_1,(i-1)*2+i) P2_Start_DAC(1) 'Ausgabe auf allen DAC starten Inc(i) (i>1000) Then ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 138 Rem abgelegt und können vor dem Programmstart vom PC übergeben Rem werden. #Include ADwinPro_All.Inc As Long Data_1[8000] As Long Init: Event: Rem Ausgaberegister DAC 1...8 setzen P2_Write_DAC8(1,Data_1,(i-1)*8+i) P2_Start_DAC(1) 'Ausgabe auf allen DAC starten Inc(i) (i>1000) Then ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 139 Rem gepackt abgelegt und können vor dem Programmstart vom PC Rem übergeben werden. #Include ADwinPro_All.Inc As Long Data_1[8000] As Long Init: Event: Rem Ausgaberegister DAC 1...8 setzen P2_Write_DAC8_Packed(1,Data_1,(i-1)*4+i) P2_Start_DAC(1) 'Ausgabe auf allen DAC starten Inc(i) (i>1000) Then ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 140 #Include ADwinPro_All.Inc As Long 'Deklaration Data_1[1000], Data_2[1000] As Long array[1000] As Long Init: 1000 array[i] = Shift_Left(Data_2[i],16) + Data_1[i] Next Event: P2_Write_DAC32(1,2,array[i])'Ausgaberegister DAC 5+6 setzen P2_Start_DAC(1) 'Ausgabe auf allen DAC starten Inc(i) (i>1000) Then ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 141 AOut-1/16 Rev. E Beispiel #Include ADwinPro_All.Inc #Define module value As Long Event: Rem DAC output 0V (32768) and set dig. outputs 16..19 P2_DAC1_DIO(module, Join_DAC_DIO(32768, 01111b)) Function Join_DAC_DIO(dac_val, dio_val) As Long Join_DAC_DIO dac_val Shift_Left(dio_val, 16) EndFunction ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 142 Alternativ zur Ausgabe als Rampe können Sie Spannungswerte auch einzeln oder über den Ausgangs-Fifo ausgeben. Eine direkte Verbindung der verschie- denen Ausgabemethoden (z.B. Rampe gefolgt von Ausgabe-Fifo) wird nicht un- terstützt. Siehe auch P2_DAC, P2_DAC_Ramp_Status, P2_DAC_Ramp_Buffer_Free, P2_DAC_ Ramp_Stop, P2_DAC1_DIO, P2_Dig_Fifo_Mode ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 143 Rem check if buffer has free space (P2_DAC_Ramp_Buffer_Free(module,dac_no) >= 0) Then v_start = array[ramp_no] v_end = array[ramp_no+1] Rem write ramp, set ramp time 1.5µs, no digital values P2_DAC_Ramp_Write(module,dac_no,v_start,v_end,0,0,1500,001b) ramp_no (ramp_no > 4) Then ramp_no EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 144 über den Ausgangs-Fifo ausgeben. Prüfen Sie erst mit P2_DAC_Ramp_ Status, ob die Rampenausgabe beendet ist, bevor Sie eine andere Ausgabe- methode verwenden. Siehe auch P2_DAC, P2_DAC_Ramp_Write, P2_DAC_Ramp_Buffer_Free, P2_DAC_ Ramp_Stop, P2_DAC1_DIO, P2_Dig_Fifo_Mode Gültig für AOut-1/16 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 145 Rem As Long as ramp was running: check status ramp_active P2_DAC_Ramp_Status(module, dac_no) Else Rem ramp has finished -> start output FIFO P2_Digout_Fifo_Start(Shift_Left(1,module-1)) Rem write new value pairs into FIFO, if possible (P2_Digout_Fifo_Empty(module) >= 2) Then P2_Digout_Fifo_Write(module,2,value,1) EndIf EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 146 Sie erst dann die nächste Rampe mit P2_DAC_ in den Zwischenpuffer. Ramp_Write fragen Sie ab, ob aktuell eine Rampe ausgegeben P2_DAC_Ramp_Status wird. Siehe auch P2_DAC, P2_DAC_Ramp_Write, P2_DAC_Ramp_Status, P2_DAC_Ramp_ Stop, P2_DAC1_DIO, P2_Dig_Fifo_Mode Gültig für AOut-1/16 Rev. E Beispiel siehe P2_DAC_Ramp_Write ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 147 Zwischenpuffer für die Rampenausgabe. Wir empfehlen, die Rampenausgabe mit im Abschnitt P2_DAC_Ramp_Stop zu initialisieren. Init: Siehe auch P2_DAC, P2_DAC_Ramp_Write, P2_DAC_Ramp_Status, P2_DAC_Ramp_ Buffer_Free, P2_DAC1_DIO, P2_Dig_Fifo_Mode Gültig für AOut-1/16 Rev. E Beispiel siehe P2_DAC_Ramp_Write ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 148: Pro Ii: Digitale Ein-/Ausgänge

    – P2_Digout_Reset (Seite 180) – P2_Digout_Set (Seite 181) – P2_DigProg (Seite 182) – P2_DigProg_Set_IO_Level (Seite 184) – P2_Get_Digout_Long (Seite 185) Die Befehlsübersicht nach Modulen (Anhang A.2) zeigt, welche Befehle für einen Modultyp anwendbar sind. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 149 Das Bit des Kanals wird auf 1 gesetzt, wenn die Schaltschwelle plus Hyste- rese überschritten wird, und wieder auf 0 gesetzt, wenn die Schaltschwelle minus Hysterese unterschritten wird. Siehe auch P2_Comp_Filter_Init, P2_Comp_Set, P2_Comp_Set_Voltage, P2_Dig_Latch, P2_Dig_Read_Latch, P2_Digin_Edge, P2_Digin_Fifo_Enable, P2_Digin_Long Gültig für Comp-16 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 150 Then Rem both channels 0, 1 > 10 V Else (Bit_Ch_0_1 = 0) Rem both channels 0, 1 < 0 V EndIf Function Volt2Digits(volt) As Long Volt2Digits volt (65536 / 60) + 32768 EndFunction ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 151 Prüfdauer. Falls Spikes auftreten, verzögern sich die Flanken zu- sätzlich geringfügig. Der Filter ist nicht geeignet für die Kombination mit dem Komparator-Modus „Hold“. Siehe auch P2_Comp_Init, P2_Comp_Set, P2_Comp_Set_Voltage, P2_Dig_Latch, Dig_Read_Latch, P2_Digin_Edge, P2_Digin_Fifo_Enable, P2_Digin_Long Gültig für Comp-16 Rev. E Beispiel siehe P2_Comp_Init ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 152 Bitnr. 31:24 … 15:0 Kanalpaar – 14, 15 12, 13 … 2, 3 0, 1 – Siehe auch P2_Comp_Init, P2_Comp_Filter_Init, P2_Comp_Set_Voltage, P2_Dig_Latch, P2_Dig_Read_Latch, P2_Digin_Edge, P2_Digin_Fifo_Enable, P2_Digin_Long Gültig für Comp-16 Rev. E Beispiel siehe P2_Comp_Init ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 153 31:24 … 15:0 Kanalpaar – 14, 15 12, 13 … 2, 3 0, 1 – Siehe auch P2_Comp_Init, P2_Comp_Filter_Init, P2_Comp_Set, P2_Dig_Latch, P2_Dig_ Read_Latch, P2_Digin_Edge, P2_Digin_Fifo_Enable, P2_Digin_Long Gültig für Comp-16 Rev. E Beispiel siehe P2_Comp_Init ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 154 Siehe auch P2_Digin_Fifo_Enable, P2_Digout_Fifo_Read_Timer, P2_Digout_Fifo_Start, P2_Digout_Fifo_Clear, P2_Digout_Fifo_Write, P2_DigProg_Set_IO_Level, P2_DAC_Ramp_Write Gültig für AOut-1/16 Rev. E, DIO-32-TiCo Rev. E, DIO-32-TiCo2 Rev. E, DIO-32/1-TiCo Rev. E, DIO-8-D12 Rev. E, MIO-D12 Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 155: Pro Ii: Digitale Ein-/Ausgänge

    Rem write 2 value pairs into output FIFO and start output P2_Digout_Fifo_Write(module,2,value,1) P2_Digout_Fifo_Start(Shift_Left(1,module-1)) Rem for DIO-32-TiCo2 only: set voltage level Rem P2_DigProg_Set_IO_Level(module, 0, 160) Event: Rem write new value pairs into FIFO, if possible (P2_Digout_Fifo_Empty(module) >= 2) Then P2_Digout_Fifo_Write(module,2,value,1) EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 156 Rem Kanäle 0…15 als Ausgang setzen, 16…31 als Eingang P2_DigProg(1,0011b) P2_Dig_Write_Latch(1,0) 'Alle Ausgangs-Bits auf 0 setzen Event: P2_Dig_Latch(1) 'Eingänge latchen, Inhalt des 'Ausgangs-Latches ausgeben Rem weitere Programmschritte Par_1 = P2_Dig_Read_Latch(1) 'Eingangsbits einlesen und beim… P2_Dig_Write_Latch(1,Par_1)'nächsten Event ausgeben ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 157 Rem DIO31:00 der Module 1+2 als Eingänge setzen P2_DigProg(1,0000b) P2_DigProg(2,0000b) Event: REM Pegel an den digitalen Eingängen von beiden Modulen synchron REM in dieZwischenregister übernehmen P2_Sync_All(11b) Par_1 P2_Dig_Read_Latch(1)'Zwischenregister Modul 1 auslesen Par_2 P2_Dig_Read_Latch(2)'Zwischenregister Modul 2 auslesen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 158 SENT-6 Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E, TRA-16 Rev. E Beispiel #Include ADwinPro_All.inc Init: Rem Bei AOUT-1/16 und SENT: Zeile mit P2_DigProg löschen P2_DigProg(1,1111b) 'DIO31:00 des Moduls als Ausgang Event: P2_Dig_Latch(1) 'Informationen des Ausgangs-Latches 'auf einer DIO-32-Karte ausgeben P2_Dig_Write_Latch(1,Par_1)'Long-Word ins Ausgangs-Latch 'schreiben ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 159 AOut-1/16 Rev. E, Comp-16 Rev. E, DIO-32 Rev. E, DIO-32-TiCo Rev. E, DIO-32-TiCo2 Rev. E, DIO-32/1-TiCo Rev. E, DIO-8-D12 Rev. E, MIO-D12 Rev. E, OPT-16 Rev. E, OPT-32-24V Rev. E, SENT-4-Out Rev. E, SENT-6 Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 160 #Include ADwinPro_All.inc Init: 'Kanäle 15:0 als Eingänge P2_DigProg(1,1100b) Event: Rem positive und negative Flanken prüfen, Ausgänge ausmaskieren Par_1 = P2_Digin_Edge(1,1) Par_2 = P2_Digin_Edge(1,0) Rem Flankenänderungen auf Ausgänge geben (Par_1 Par_2 > 0)Then P2_Digout_Bits(1,Shift_Left(Par_1,16),Shift_Left(Par_2,16)) EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 161 AOut-1/16 Rev. E, Comp-16 Rev. E, DIO-32 Rev. E, DIO-32-TiCo Rev. E, DIO-32-TiCo2 Rev. E, DIO-32/1-TiCo Rev. E, DIO-8-D12 Rev. E, MIO-D12 Rev. E, OPT-16 Rev. E, OPT-32-24V Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E Beispiel siehe P2_Digin_Fifo_Read ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 162 AOut-1/16 Rev. E, Comp-16 Rev. E, DIO-32 Rev. E, DIO-32-TiCo Rev. E, DIO-32-TiCo2 Rev. E, DIO-32/1-TiCo Rev. E, DIO-8-D12 Rev. E, MIO-D12 Rev. E, OPT-16 Rev. E, OPT-32-24V Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E Beispiel siehe P2_Digin_Fifo_Read ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 163 AOut-1/16 Rev. E, Comp-16 Rev. E, DIO-32 Rev. E, DIO-32-TiCo Rev. E, DIO-32-TiCo2 Rev. E, DIO-32/1-TiCo Rev. E, DIO-8-D12 Rev. E, MIO-D12 Rev. E, OPT-16 Rev. E, OPT-32-24V Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E Beispiel siehe P2_Digin_Fifo_Read ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 164 AOut-1/16 Rev. E, Comp-16 Rev. E, DIO-32 Rev. E, DIO-32-TiCo Rev. E, DIO-32-TiCo2 Rev. E, DIO-32/1-TiCo Rev. E, DIO-8-D12 Rev. E, MIO-D12 Rev. E, OPT-16 Rev. E, OPT-32-24V Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 165 P2_Digin_Fifo_Enable(1,0)'Überwachung aus P2_Digin_Fifo_Clear(1) 'FIFO löschen P2_Digin_Fifo_Enable(1,10011b)'Kanäle 1,2,5 überwachen index Event: = P2_Digin_Fifo_Full(1) 'Anzahl Wertepaare (num > 50) Then Rem Wertepaare auslesen P2_Digin_Fifo_Read(1, num, Data_1, Data_2, index) index index (index > 10000) Then index EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 166 AOut-1/16 Rev. E, Comp-16 Rev. E, DIO-32 Rev. E, DIO-32-TiCo Rev. E, DIO-32-TiCo2 Rev. E, DIO-32/1-TiCo Rev. E, DIO-8-D12 Rev. E, MIO-D12 Rev. E, OPT-16 Rev. E, OPT-32-24V Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 167 'Kanäle 15:0 als Eingänge P2_Digin_Fifo_Enable(1,0)'Überwachung aus P2_Digin_Fifo_Clear(1) 'FIFO löschen P2_Digin_Fifo_Enable(1,10011b)'Kanäle 1,2,5 überwachen index Event: = P2_Digin_Fifo_Full(1) 'Anzahl Wertepaare (num > 50) Then Rem Wertepaare auslesen P2_Digin_Fifo_Read_Fast(1, num, Data_1, index) index index (index > 10000) Then index EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 168 = P2_Digin_Fifo_Read_Timer() - t_start ((diff_new > 0) (diff_old < 0)) Then Inc(count_overflow) 'increase number of counter overflows EndIf diff_old diff_new ähnliche Beispiele siehe – ADbasic-Beispiel im Ordner C:\ADwin\ADbasic\samples_ADwin: seconds_timer.bas – TiCoBasic-Beispiel seconds_timer_TiCo.bas im Ordner C:\ADwin\TiCoBasic\samples_ADwin ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 169: Prüfdauer Des Filters, Angegeben In Einheiten

    Zeitverzögerung Δt kann größer werden, wenn mehrere Fehlpulse vorkom- men. Siehe auch P2_Comp_Init, P2_Comp_Filter_Init, P2_Dig_Latch, P2_Dig_Read_Latch, Digin_Edge, P2_Digin_Fifo_Enable, P2_Digin_Long Gültig für DIO-32-TiCo Rev. E, DIO-32-TiCo2 Rev. E, DIO-32/1-TiCo Rev. E, DIO-8-D12 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 170 ADwin Pro II: Digitale Ein-/Ausgänge P2_Digin_Filter_Init Beispiel Rem example for DIO-32-TiCo #Include ADwinPro_All.Inc #Define module Init: P2_DigProg(module,0) 'Set DIO31:00 as inputs P2_Digin_Filter_Init(module, 5)'set spike filter to 100ns Event: Par_1 P2_Digin_Long(module)'Read all inputs ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 171 E, OPT-32-24V Rev. E, SENT-4-Out Rev. E, SENT-6 Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E Beispiel #Include ADwinPro_All.inc Init: Rem Bei AOUT-1/16 und SENT: Zeile mit P2_DigProg löschen P2_DigProg(1,0000b) 'DIO 31:00 als Eingang Event: Par_1 = P2_Digin_Long(1) 'Alle Eingänge einlesen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 172 Rem nur für DIO32: Kanäle 0…15 als Eingang, 16…31 als Ausgang P2_DigProg(1,1100b) Event: Rem Eingangsbits einlesen und prüfen, ob Kanal 15 gesetzt ist (P2_Digin_Long(1) 8000h = 8000h) Then P2_Digout(1,31,0) 'Kanal 15 gesetzt: Bit 31 löschen Else P2_Digout(1,31,1) 'Kanal 15 gelöscht: Bit 31 setzen EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 173 AOut-1/16 Rev. E, DIO-32 Rev. E, DIO-32-TiCo Rev. E, DIO-32-TiCo2 Rev. E, DIO-32/1-TiCo Rev. E, DIO-8-D12 Rev. E, REL-16 Rev. E, SENT-4-Out Rev. E, SENT-6 Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E, TRA-16 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 174 Rem Kanäle 0…31 als Ausgang setzen P2_DigProg(1,1111b) Event: (Par_1 = 1) Then 'Bedingung abfragen Rem unteres Wort: MSB der Bytes setzen, andere Bits löschen P2_Digout_Bits(1,8080h,7F7Fh) Else Rem unteres Wort: ungerade Bits setzen, gerade Bits löschen P2_Digout_Bits(1,5555h,0AAAAh) EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 175 P2_Digout_Fifo_Enable, P2_Dig_Fifo_Mode, P2_Digout_Fifo_Start, Digout_Fifo_Write, P2_DigProg Gültig für AOut-1/16 Rev. E, DIO-32-TiCo Rev. E, DIO-32-TiCo2 Rev. E, DIO-32/1-TiCo Rev. E, DIO-8-D12 Rev. E, MIO-D12 Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E Beispiel siehe P2_Dig_Fifo_Mode ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 176 Siehe auch P2_Dig_Fifo_Mode, P2_Digout_Fifo_Read_Timer, P2_Digout_Fifo_Start, Digout_Fifo_Write Gültig für AOut-1/16 Rev. E, DIO-32-TiCo Rev. E, DIO-32-TiCo2 Rev. E, DIO-32/1-TiCo Rev. E, DIO-8-D12 Rev. E, MIO-D12 Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E Beispiel siehe P2_Dig_Fifo_Mode ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 177 Fifo_Enable, P2_Digout_Fifo_Write, P2_DigProg, P2_DigProg_Set_IO_Level, P2_Digout_Long Gültig für AOut-1/16 Rev. E, DIO-32-TiCo Rev. E, DIO-32-TiCo2 Rev. E, DIO-32/1-TiCo Rev. E, DIO-8-D12 Rev. E, MIO-D12 Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E Beispiel siehe P2_Dig_Fifo_Mode ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 178 P2_Dig_Fifo_Mode, P2_Digout_Fifo_Clear, P2_Digout_Fifo_Empty, Digout_Fifo_Start, P2_Digout_Fifo_Write, P2_DigProg Gültig für AOut-1/16 Rev. E, DIO-32-TiCo Rev. E, DIO-32-TiCo2 Rev. E, DIO-32/1-TiCo Rev. E, DIO-8-D12 Rev. E, MIO-D12 Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 179 P2_Digout_Fifo_Clear, P2_Digout_Fifo_Enable, P2_Dig_Fifo_Mode, Digout_Fifo_Read_Timer, P2_Digout_Fifo_Write, P2_DigProg Gültig für AOut-1/16 Rev. E, DIO-32-TiCo Rev. E, DIO-32-TiCo2 Rev. E, DIO-32/1-TiCo Rev. E, DIO-8-D12 Rev. E, MIO-D12 Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E Beispiel siehe P2_Dig_Fifo_Mode ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 180 Der Wert eines Zeitstempels wird in Prozessortakten gezählt, also in Einheiten von 10ns / 5ns. • Beachten Sie: Wenn auf einem Modul mit TiCo2-Prozessor die kontinuierliche Ausgabe aktiviert ist, muss der erste Zeitstempel im Feld einen Wert größer gleich 2 (=10ns) haben. values[] ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 181 • Wenn der Zählerstand gleich dem Zeitstempel des aktuellen Wertepaars im FIFO ist, wird das Bitmuster auf den festgelegten Kanälen ausgegeben. • Wenn ein Bitmuster ausgegeben wurde, wird das Wertepaar aus dem FIFO gelöscht. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 182 Digout_Fifo_Read_Timer, P2_Digout_Fifo_Start, P2_Digout_Long, P2_Dig- Prog Gültig für AOut-1/16 Rev. E, DIO-32-TiCo Rev. E, DIO-32-TiCo2 Rev. E, DIO-32/1-TiCo Rev. E, DIO-8-D12 Rev. E, MIO-D12 Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E Beispiel siehe P2_Dig_Fifo_Mode ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 183 SENT-6 Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E, TRA-16 Rev. E Beispiel #Include ADwinPro_All.inc Init: Rem Bei AOUT-1/16: Zeile mit P2_DigProg löschen P2_DigProg(1,01111b) 'DIO31:00 als Ausgang Event: P2_Digout_Long(1,1000000)'Den Wert 1 Mio. als Binärwert 'auf die DIOs ausgeben ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 184 SENT-6 Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E, TRA-16 Rev. E Beispiel ADwinPro_All.inc #Include Init: Rem Bei AOUT-1/16: Zeile mit P2_DigProg löschen Rem Kanäle 0…31 als Ausgang setzen P2_DigProg(1,1111b) Event: (Par_1 = 1) Then 'Bedingung abfragen Rem unteres Wort: geradzahlige Bits löschen P2_Digout_Reset(1,0AAAAh) EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 185 Beispiel ADwinPro_All.inc #Include Init: Rem Bei AOUT-1/16: Zeile mit P2_DigProg löschen Rem Kanäle 0…31 als Ausgang setzen P2_DigProg(1,1111b) Event: (Par_1 = 1) Then 'Bedingung abfragen Rem unteres Wort: MSB der Bytes setzen P2_Digout_Set(1,8080h) EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 186 DIO-32 Rev. E, DIO-32-TiCo Rev. E, DIO-32-TiCo2 Rev. E, DIO-32/1-TiCo Rev. E, DIO-8-D12 Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E Beispiel #Include ADwinPro_All.inc Init: Rem Kanäle 0…7 des Moduls Nr. 1 als Eingang konfiguieren Rem und Kanäle 8…31 als Ausgang P2_DigProg(1, 1110b) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 187 Start Gültig für DIO-32/1-TiCo Rev. E, DIO-8-D12 Rev. E, SPI-2-D Rev. E Beispiel #Include ADwinPro_All.inc Init: Rem Kanäle 0…11 des Moduls Nr. 1 als Eingang konfiguieren Rem und Kanäle 12…31 als Ausgang P2_DigProg_Bits(1, 0Bh) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 188 Digout_Fifo_Start. Siehe auch P2_Digin_Long, P2_Digout, P2_Digout_Long, P2_Digin_Fifo_Enable, Digout_Fifo_Start, P2_DigProg, P2_Get_Digout_Long Gültig für DIO-32-TiCo2 Rev. E Beispiel #Include ADwinPro_All.inc Init: Rem Spannungspegel 2,8 V für die Kanäle 0..15 einstellen P2_DigProg_Set_IO_Level(1, 0, 160) P2_DigProg_Set_IO_Level(1, 1, 160) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 189 DIO-32/1-TiCo Rev. E, DIO-8-D12 Rev. E, REL-16 Rev. E, SENT-4-Out Rev. E, SENT-6 Rev. E, SPI-2-D Rev. E, SPI-2-T Rev. E, TRA-16 Rev. E Beispiel #Include ADwinPro_All.inc Event: Rem Bits 31:0 aus dem Latch zurücklesen = P2_Get_Digout_Long(1) Par_1 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 190: Pro Ii: Zähler

    – P2_SSI_Set_Bits (Seite 207) – P2_SSI_Set_Clock (Seite 208) – P2_SSI_Set_Delay (Seite 209) – P2_SSI_Start (Seite 210) – P2_SSI_Status (Seite 211) Die Befehlsübersicht nach Modulen (Anhang A.2) zeigt, welche Befehle für einen Modultyp anwendbar sind. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 191 'Zähler 1 Takt-Richtung P2_Cnt_Mode(module,2,0b) 'Zähler 2 Takt-Richtung P2_Cnt_Clear(module,11b) 'Zähler 1+2 auf 0 zurücksetzen P2_Cnt_Enable(module,11b) 'Zähler 1+2 starten Event: P2_Cnt_Latch(module,11b) 'Zähler 1+2 gleichzeitig latchen Par_1 P2_Cnt_Read_Latch(module,1)'Latch Zähler 1 und … Par_2 P2_Cnt_Read_Latch(module,2)'Latch Zähler 2 auslesen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 192 'Zähler 1 Takt-Richtung P2_Cnt_Mode(module,2,0b) 'Zähler 2 Takt-Richtung P2_Cnt_Clear(module,11b) 'Zähler 1+2 auf 0 zurücksetzen P2_Cnt_Enable(module,11b) 'Zähler 1+2 starten Event: P2_Cnt_Latch(module,11b) 'Zähler 1+2 gleichzeitig latchen Par_1 P2_Cnt_Read_Latch(module,1)'Latch Zähler 1 und … Par_2 P2_Cnt_Read_Latch(module,2)'Latch Zähler 2 auslesen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 193 Init: P2_Cnt_PW_Enable(module,0000b)'alle PW-Zähler stoppen Rem Zähler 1+2: Modus Takt-Richtung, PWM-Msg. am Eingang CLK P2_Cnt_Mode(module,1,0) P2_Cnt_Mode(module,2,0) P2_Cnt_PW_Enable(module,0011b)'PWM-Zähler 1+2 starten Event: P2_Cnt_PW_Latch(module,11b) 'Zähler 1+2 gleichzeitig latchen REM High-/Low-Zeit lesen P2_Cnt_Get_PW_HL(module,1,Par_1,Par_2) REM Frequenz und Taktverhältnis lesen P2_Cnt_Get_PW(module,1,FPar_1,FPar_2) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 194 Bei TTL-Eingängen sind diese Bits stets 0. Das Statusregister wird beim Auslesen automatisch zurückgesetzt. Siehe auch P2_Cnt_Enable, P2_Cnt_PW_Enable, P2_Cnt_Get_PW, P2_Cnt_Mode, Cnt_Read Gültig für CNT-D Rev. E, CNT-I Rev. E, CNT-T Rev. E, MIO-4-ET1 Rev. E, MIO-D12 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 195 REM Korrelationsfehler Zähler 1? (PAR_2 01000b = 01000b) Then PAR_4 'Anzahl Korrelationsfehler error 'Fehlerindikator setzen EndIf REM Zustand Eingang CLR PAR_5 Shift_Right(PAR_2 100b,2) REM Zustand Eingang A PAR_6 Shift_Right(PAR_2 10b,1) REM Zustand Eingang B PAR_7 PAR_2 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 196 Init: P2_Cnt_PW_Enable(module,0000b)'alle Zähler stoppen Rem Zähler 1+2: Modus Takt-Richtung, PWM-Msg. am Eingang CLK P2_Cnt_Mode(module,1,0) P2_Cnt_Mode(module,2,0) P2_Cnt_PW_Enable(module,0011b)'PWM-Zähler 1+2 starten Event: P2_Cnt_PW_Latch(module,11b) 'Zähler 1+2 gleichzeitig latchen REM High-/Low-Zeit lesen P2_Cnt_Get_PW_HL(module,1,Par_1,Par_2) REM Frequenz und Taktverhältnis lesen P2_Cnt_Get_PW(module,1,FPar_1,FPar_2) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 197 Init: P2_Cnt_PW_Enable(module,0000b)'alle Zähler stoppen Rem Zähler 1+2: Modus Takt-Richtung, PWM-Msg. am Eingang CLK P2_Cnt_Mode(module,1,0) P2_Cnt_Mode(module,2,0) P2_Cnt_PW_Enable(module,0011b)'PWM-Zähler 1+2 starten Event: P2_Cnt_PW_Latch(module,11b) 'Zähler 1+2 gleichzeitig latchen REM High-/Low-Zeit lesen P2_Cnt_Get_PW_HL(module,1,Par_1,Par_2) REM Frequenz und Taktverhältnis lesen P2_Cnt_Get_PW(module,1,FPar_1,FPar_2) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 198 'Zähler 1 Takt-Richtung P2_Cnt_Mode(module,2,0b) 'Zähler 2 Takt-Richtung P2_Cnt_Clear(module,11b) 'Zähler 1+2 auf 0 zurücksetzen P2_Cnt_Enable(module,11b) 'Zähler 1+2 starten Event: 'Zähler 1+2 gleichzeitig latchen P2_Cnt_Latch(module,11b) Par_1 P2_Cnt_Read_Latch(module,1)'Latch Zähler 1 und … Par_2 P2_Cnt_Read_Latch(module,2)'Latch Zähler 2 auslesen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 199 Bit 5=1 freigegeben werden. Beim Modul CNT-T Rev. E sind die PWM-Eingangs-Pins A und B nur in Verbin- dung mit dem Zählermodus Vier-Flanken-Auswertung einsetzbar und die PWM-Eingangs-Pins CLK und DIR nur in Verbindung mit dem Takt-Rich- tungs-Modus. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 200: Siehe Auch

    'Zähler 1 Takt-Richtung P2_Cnt_Mode(module,2,0b) 'Zähler 2 Takt-Richtung 'Zähler 1+2 auf 0 zurücksetzen P2_Cnt_Clear(module,11b) P2_Cnt_Enable(module,11b) 'Zähler 1+2 starten Event: P2_Cnt_Latch(module,11b) 'Zähler 1+2 gleichzeitig latchen Par_1 P2_Cnt_Read_Latch(module,1)'Latch Zähler 1 und … Par_2 P2_Cnt_Read_Latch(module,2)'Latch Zähler 2 auslesen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 201 Init: P2_Cnt_PW_Enable(module,0000b)'alle Zähler stoppen Rem Zähler 1+2: Modus Takt-Richtung, PWM-Msg. am Eingang CLK P2_Cnt_Mode(module,1,0) P2_Cnt_Mode(module,2,0) P2_Cnt_PW_Enable(module,0011b)'PWM-Zähler 1+2 starten Event: P2_Cnt_PW_Latch(module,11b) 'Zähler 1+2 gleichzeitig latchen REM High-/Low-Zeit lesen P2_Cnt_Get_PW_HL(module,1,Par_1,Par_2) REM Frequenz und Taktverhältnis lesen P2_Cnt_Get_PW(module,1,FPar_1,FPar_2) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 202 Rem Zähler 1: Modus Takt-Richtung, CLR freigeben P2_Cnt_Mode(module,1,100000b) Rem Zähler 2: Modus Takt-Richtung, LATCH freigeben P2_Cnt_Mode(module,2,110000b) P2_Cnt_Clear(module,11b) 'Zähler 1+2 auf 0 zurücksetzen P2_Cnt_Enable(module,11b) 'Zähler 1+2 starten Event: Par_1 P2_Cnt_Read(module,1)'Zähler 1 und … Par_2 P2_Cnt_Read(module,2)'Zähler 2 auslesen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 203 Rem Zähler 4: Modus Takt-Richtung, LATCH freigeben P2_Cnt_Mode(module,4,100000b) P2_Cnt_Clear(module,1111b) 'Alle Zähler auf 0 zurücksetzen P2_Cnt_Enable(module,1111b) 'Zähler starten Event: P2_Cnt_Read4(module,new,1) 'Zählerstände in Feld new einlesen Data_1[i] = new[i]-old[i] 'Differenz (f = Impulse / Zeit) old[i] = new[i] 'Neuen Zählerstand speichern Next ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 204 Registerinhalte werden mit oder P2_Cnt_PW_Latch P2_Cnt_Sync_Latch gesetzt. Zur Auswertung der PWM-Register beachten Sie die Hinweise im Handbuch ADwin-Pro II Hardware, ModulPro II-CNT-x Rev. E Pro II-CNT-x Rev. E. Siehe auch P2_Cnt_PW_Enable, P2_Cnt_Get_PW, P2_Cnt_Get_PW_HL, P2_Cnt_PW_ Latch, P2_Cnt_Sync_Latch Gültig für CNT-D Rev. E, CNT-I Rev. E, CNT-T Rev. E, MIO-4-ET1 Rev. E, MIO-D12 Rev. E...
  • Seite 205 Init: P2_Cnt_Enable(module,0000b) 'alle Zähler stoppen Rem Zähler 2 Takt-Richtung, Latch-Eingang freigeben P2_Cnt_Mode(module,2,110000b) P2_Cnt_Clear(module,10b) 'Zähler 2 auf 0 zurücksetzen P2_Cnt_Enable(module,10b) 'Zähler 2 starten Event: P2_Cnt_Latch(module,0010b) 'Zähler 2 latchen Par_10 = P2_Cnt_Read_Latch(module,2) 'Latch Zähler 2 lesen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 206 'Alle Zähler auf 0 zurücksetzen P2_Cnt_Enable(module,1111b) 'Zähler starten Event: P2_Cnt_Latch(module,1111b) 'Zähler gleichzeitig latchen P2_Cnt_Read_Latch4(module,new,1)'Zähler in Feld new einlesen Data_1[i] = new[i]-old[i] 'Differenz (f = Impulse / Zeit) old[i] = new[i] 'Neuen Zählerstand speichern Next ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 207 Rem get positive edges latch 1 = P2_Cnt_Read_Int_Register(module,1,8) time oldpw 'calculate time base Rem frequency: 100000000=timer frequency of CNT module frequency edges 100000000 time oldvr 'store VR counter value oldpw 'store PW counter value EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 208 'Anzahl Bits = 23 (Decoder 1) P2_SSI_Set_Bits(module,1,23) P2_SSI_Set_Bits(module,2,23) 'Anzahl Bits = 23 (Decoder 2) P2_SSI_Mode(module,3) 'Continuous-Modus für beide Decoder Event: Par_1 = P2_SSI_Read(module,1) 'Positionswert Decoder 1 lesen Par_2 = P2_SSI_Read(module,2) 'Positionswert Decoder 2 lesen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 209 Rem Falls es sich um einen Encoder mit Gray-Code handelt: 'Werte der letzten Wandlung löschen ' -"- 'Alle 32 mögl. Bits durchgehen (Shift_Right(Par_1,(32 - n)) (Shift_Left(m,(32 - n))) Next Par_9 'Das Ergebnis der Gray-/Binär- 'Wandlung in Par_9 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 210 P2_SSI_Set_Delay(module,2,1000) 'waiting delay decoder 2: 20 µs P2_SSI_Set_Bits(module,1,10)'10 bits for decoder 1 P2_SSI_Set_Bits(module,2,25)'25 bits for decoder 2 'Set continuous-mode (both decoders) P2_SSI_Mode(module,3) Par_1 Event: Par_1 (Par_1 > 1000) Then Par_1 P2_SSI_Read2(module,Data_1,Par_1*2)'Read both position values ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 211 'waiting delay decoder 2: 20 µs P2_SSI_Mode(module,3) 'set continuous mode for both P2_SSI_Set_Bits(module,1,10)'10 Bits for Decoder 1 P2_SSI_Set_Bits(module,2,25)'25 Bits for Decoder 2 Event: Par_1 P2_SSI_Read(module,1)'read value of decoder 1 Par_2 P2_SSI_Read(module,2)'read value of decoder 2 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 212 P2_SSI_Set_Delay(module,2,1000) 'waiting delay decoder 2: 20 µs P2_SSI_Mode(module,3) 'Continuous-Mode setzen '(für beide Decoder) P2_SSI_Set_Bits(module,1,10)'Anzahl Bits = 10 (Decoder 1) P2_SSI_Set_Bits(module,2,25)'Anzahl Bits = 25 (Decoder 2) Event: Par_1 P2_SSI_Read(module,1)'Positionswert (Decoder auslesen Par_2 P2_SSI_Read(module,2)'Positionswert (Decoder auslesen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 213 P2_SSI_Set_Delay(module,1,400)'Zeitabstand 8µs für Decoder 1 P2_SSI_Set_Delay(module,2,200)'Zeitabstand 4µs für Decoder 2 P2_SSI_Set_Bits(module,1,10)'10 Bits für Decoder 1 P2_SSI_Set_Bits(module,2,25)'25 Bits für Decoder 2 P2_SSI_Mode(module,3) 'Continuous-Mode für beide Decoder Event: Par_1 P2_SSI_Read(module,1)'Positionswert (Decoder auslesen Par_2 P2_SSI_Read(module,2)'Positionswert (Decoder auslesen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 214 (P2_SSI_Status(module,1) = 0) Rem Wenn Positionswert komplett gelesen ist, dann … Par_1 P2_SSI_Read(module,1)'Positionswert auslesen anzeigen 'Für Decoder 2: Until (P2_SSI_Status(module,2) = 0) Rem Wenn Positionswert komplett gelesen ist, dann … Par_1 P2_SSI_Read(module,2)'Positionswert auslesen anzeigen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 215 (P2_SSI_Status(module,1) = 0) Rem Wenn Positionswert komplett gelesen ist, dann … Par_1 P2_SSI_Read(module,1)'Positionswert auslesen anzeigen 'Für Decoder 2: Until (P2_SSI_Status(module,2) = 0) Rem Wenn Positionswert komplett gelesen ist, dann … Par_1 P2_SSI_Read(module,2)'Positionswert auslesen anzeigen ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 216 – P2_Read_Msg_Con (Seite 224) – P2_Set_CAN_Baudrate (Seite 226) – P2_Set_CAN_Reg (Seite 227) – P2_Transmit (Seite 228) – P2_Transmit_Status (Seite 230) Die Befehlsübersicht nach Modulen (Anhang A.2) zeigt, welche Befehle für einen Modultyp anwendbar sind. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 217 'Par_1 = Cast_Float32ToLong(pi) 'korrekte Syntax für T12 REM Bitmuster (32 Bit) in 4 Bytes aufteilen CAN_Msg[4] = Par_1 0FFh 'LSB zuweisen CAN_Msg[4-i] = Shift_Right(Par_1,8*i) 0FFh NEXT CAN_Msg[9] = 'Länge der Nachricht in Bytes Event: P2_Transmit(1,1,6) 'Message-Objekt 6 senden ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 218 REM read interrupt register and change value to objekt no. CAN_Interrupt_Msg = P2_Get_CAN_Reg(module,channel,5fh) (CAN_Interrupt_Msg = 2) Then CAN_Interrupt_Msg Else CAN_Interrupt_Msg CAN_Interrupt_Msg EndIf EndFunction Der Wert im Interrupt-Register entspricht einem der Message-Objekte nach fol- gendem Schema: ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 219 ADwin Pro II: CAN-Bus P2_CAN_Interrupt_Source … Wert … Nummer Message-Objekt ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 220 Sie schalten die obere LED auf der Frontblende mit ein oder aus. P2_Set_LED Siehe auch P2_Set_LED Gültig für CAN-2 Rev. E Beispiel #Include ADwinPro_All.inc Init: P2_Init_CAN(1,1) 'CAN-Controller initialisieren P2_CAN_Set_LED(1,1,3) 'Setze LED 1 auf orange ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 221 Then Par_13 Else Par_13 Par_13 EndIf Rem get msg object = enable new interrupt Par_15 = P2_Read_Msg(1,1,Par_13) Der Wert im Interrupt-Register entspricht einem der Message-Objekte nach fol- gendem Schema: … Wert Nummer Message-Objekt … ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 222 Gültig für CAN-2 Rev. E Beispiel #Include ADwinPro_All.inc Init: REM Initialisierung des CAN-Controllers 1 auf dem CAN-Modul 1 P2_Init_CAN(1,1) REM Message-Objekt 1 freigeben für den Empfang von REM CAN-Nachrichten mit dem 11 Bit-Identifier 200 P2_En_Receive(1,1,1,200,0) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 223 Gültig für CAN-2 Rev. E Beispiel #Include ADwinPro_All.inc Init: REM Initialisierung des CAN-Controllers 1 auf dem CAN-Modul 1 P2_Init_CAN(1,1) REM Message-Objekt 6 freigeben für das Senden von REM CAN-Nachrichten mit dem 11 Bit-Identifier 40 P2_En_Transmit(1,1,6,40,0) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 224 P2_En_Interrupt, P2_Init_CAN, P2_Set_CAN_Baudrate, P2_Set_CAN_Reg Gültig für CAN-2 Rev. E Beispiel #Include ADwinPro_All.inc Init: REM Initialisierung des CAN-Controllers 1 auf dem CAN-Modul 1 P2_Init_CAN(1,1) REM Das Kontroll-Register des CAN-Controller 1, Modul 1 auslesen Par_1 = P2_Get_CAN_Reg(1,1,0) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 225 Fall mit neu eingestellt werden. P2_Set_CAN_Baudrate Siehe auch P2_En_Receive, P2_En_Transmit, P2_Get_CAN_Reg, P2_Set_CAN_Baudra- P2_Set_CAN_Reg Gültig für CAN-2 Rev. E Beispiel #Include ADwinPro_All.inc Init: REM Initialisierung des CAN-Controllers 1 auf dem CAN-Modul 1 P2_Init_CAN(1,1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 226 Sooft erforderlich: Prüfen Sie auf eine neue Nachricht und – falls vorhanden – speichern die Nachricht in CAN_MSG P2_Read_Msg Sie können eine empfangene Nachricht nur einmal auslesen. Siehe auch CAN_Msg, P2_En_Receive, P2_En_Transmit, P2_Init_CAN, P2_Transmit, Transmit_Status Gültig für CAN-2 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 227 Par_1 = Shift_Left(Par_1,8) + CAN_Msg[n] 'zusammenfügen NEXT REM Das Bitmuster in Par_1 in den Datentyp FLOAT wandeln und REM der Variablen FPar_1 zuweisen. FPar_1 = Cast_LongToFloat(Par_1) 'FPar_1 = Cast_LongToFloat32(Par_1) 'korrekte Syntax für T12 EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 228 So oft erforderlich: Prüfen Sie auf eine neue Nachricht und – falls vorhanden – speichern die Nachricht in CAN_MSG P2_Read_Msg Sie können eine empfangene Nachricht nur einmal auslesen. Siehe auch CAN_Msg, P2_En_Receive, P2_En_Transmit, P2_Read_Msg Gültig für CAN-2 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 229 Par_1 = Shift_Left(Par_1,8) + CAN_Msg[n] 'zusammenfügen NEXT REM Das Bitmuster in Par_1 in den Datentyp FLOAT wandeln und REM der Variablen FPar_1 zuweisen. FPar_1 = Cast_LongToFloat(Par_1) 'FPar_1 = Cast_LongToFloat32(Par_1) 'korrekte Syntax für T12 EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 230 Baudrate wieder mit der Standardeinstellung (1MBit/s) überschrie- ben wird. Siehe auch P2_Get_CAN_Reg, P2_Init_CAN, P2_Set_CAN_Reg Gültig für CAN-2 Rev. E Beispiel #Include ADwinPro_All.inc status As Long Init: P2_Init_CAN(1,1) 'Initialisierung des CAN-Controllers status P2_Set_CAN_Baudrate(1,1,125000)'Baudrate = 125 kBit/s ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 231 Sie finden die Registernummern des CAN-Controllers AN82527 im Intel -Da- tenblatt. Siehe auch P2_Init_CAN, P2_Set_CAN_Baudrate, P2_Get_CAN_Reg Gültig für CAN-2 Rev. E Beispiel #Include ADwinPro_All.inc Init: P2_Init_CAN(1,1) 'Initialisierung des CAN-Controllers 'Setze Control-Register auf den Wert 1 P2_Set_CAN_Reg(1,1,0,1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 232 • Senden Sie die Nachricht mit P2_Transmit Die CAN-Schnittstelle sendet die Nachricht, sobald das Message-Objekt Zu- griffsrecht auf den CAN-Bus hat. Siehe auch CAN_Msg, P2_En_Receive, P2_En_Transmit, P2_Read_Msg, P2_Transmit_ Status Gültig für CAN-2 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 233 'Par_1 = Cast_Float32ToLong(pi) 'korrekte Syntax für T12 REM Bitmuster (32 Bit) in 4 Bytes aufteilen CAN_Msg[4] = Par_1 0FFh 'LSB zuweisen CAN_Msg[4-i] = Shift_Right(Par_1,8*i) 0FFh NEXT CAN_Msg[9] = 'Länge der Nachricht in Bytes Event: P2_Transmit(1,1,6) 'Message-Objekt 6 senden ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 234 Par_1 'Wert setzen CAN_Msg[9] = 'Länge der Nachricht in Bytes Event: Inc(Par_1) CAN_Msg[1] = Par_1 'Wert setzen (P2_Transmit_Status(1,1,6) = 0) Then 'bereit zum Senden? P2_Transmit(1,1,6) 'Message-Objekt 6 senden EndIf (Par_1 = 255) Then Par_1 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 235 ADwin Pro II: CAN-Bus P2_Transmit_Status ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 236: Pro Ii: Can Fd-Bus

    Programm Pro2_CANFD_sample_Code.bas im Ordner C:\ADwin\ADbasic\samples_ADwin_ProII\CAN FD.P2_CANFD_Get_ Header_Parts • P2_CANFD_Get_ID • P2_CANFD_Get_ESI • P2_CANFD_Get_FDF • P2_CANFD_Get_BRS • P2_CANFD_Get_RTR • P2_CANFD_Get_IDE • P2_CANFD_Get_DLC • P2_CANFD_Get_SEQ – P2_CANFD_Read_EFO – P2_CANFD_Write_TMO – P2_CANFD_Transmit_Msg – P2_CANFD_Transmit_Multi_Msg – P2_CANFD_Get_TREC – P2_CANFD_Get_BDIAG0 – P2_CANFD_Get_BDIAG1 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 237 Sie schalten die obere LED auf der Frontblende mit ein oder aus. P2_Set_LED Siehe auch P2_Set_LED Gültig für CAN-FD-2 Rev. E Beispiel siehe Beispieloberfläche ADwinCANFDUserInterface.adi und zugehöriges Programm Pro2_CANFD_sample_Code.bas im Ordner C:\ADwin\ADbasic\samples_ADwin_ProII\CAN FD. #Include ADwinPro_All.inc Init: P2_CANFD_Set_LED(1,2,1) 'Schalte LED 2 ein ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 238: Data Table

    • P2_CANFD_Enable_Transmit_Queue • P2_CANFD_Enable_Transmit_Event_Fifo • P2_CANFD_Set_Baudrate_Nominal • P2_CANFD_Set_Baudrate_Data • P2_CANFD_Set_SID11 • P2_CANFD_Set_TDC • P2_CANFD_Set_Mode Siehe auch P2_CANFD_Init_Controller, P2_CANFD_Enable_Receive_Fifo, P2_CANFD_ Enable_Transmit_Fifo, P2_CANFD_Enable_Transmit_Queue, P2_CANFD_ Enable_Transmit_Event_Fifo, P2_CANFD_Set_Baudrate_Nominal, CANFD_Set_Baudrate_Data, P2_CANFD_Set_SID11, P2_CANFD_Set_TDC, P2_CANFD_Set_Mode Gültig für CAN-FD-2 Rev. E Beispiel ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 239 = P2_CANFD_Enable_Transmit_Fifo(3, 07H, 004H, DataCANFD2) REM transmit queue = Fifo 0 = P2_CANFD_Enable_Transmit_Queue(07H, 004H, DataCANFD2) = P2_CANFD_Enable_Transmit_Event_Fifo(004H, 1, DataCANFD2) = P2_CANFD_Set_Baudrate_Nominal(1000000, DataCANFD2) = P2_CANFD_Set_Baudrate_Data(2000000, DataCANFD2) P2_CANFD_Set_TDC(1, 0, 010h, DataCANFD2) P2_CANFD_Set_Mode(CANFD_MODE_CANFD, DataCANFD2) (P2_CANFD_Init_Controller(DataCANFD2) = CANFD_INIT_NIO) Then ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 240 • P2_CANFD_Enable_Transmit_Event_Fifo • P2_CANFD_Set_Baudrate_Nominal • P2_CANFD_Set_Baudrate_Data • P2_CANFD_Set_SID11 • P2_CANFD_Set_TDC • P2_CANFD_Set_Mode Siehe auch P2_CANFD_Init_Datatable, P2_CANFD_Enable_Receive_Fifo, P2_CANFD_ Enable_Transmit_Fifo, P2_CANFD_Enable_Transmit_Queue, P2_CANFD_ Enable_Transmit_Event_Fifo, P2_CANFD_Set_Baudrate_Nominal, CANFD_Set_Baudrate_Data, P2_CANFD_Set_SID11, P2_CANFD_Set_TDC, P2_CANFD_Set_Mode Gültig für CAN-FD-2 Rev. E Beispiel siehe P2_CANFD_Init_Datatable ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 241 Nachricht setzt sich zusammen aus dem Header (8 Byte), aus den Nachrichten-Bytes (pls: 0…64 Bytes) und ggf. aus dem Zeitstempel (4 Byte): Größe Eingangs-Fifo = + timestamp*4) fifo_size In einem Eingangs-Fifo werden CANFD-Nachrichten in der Reihenfolge gespei- chert bzw. abgerufen, wie sie empfangen wurden. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 242 Fifo voll ist und eine Nachricht empfangen wird, dann wird die älteste Nach- richt überschrieben und geht damit verloren. Siehe auch P2_CANFD_Get_Fifo_State, P2_CANFD_Read_RMO, P2_CANFD_Init_Data- table, P2_CANFD_Init_Controller, P2_CANFD_Enable_Transmit_Fifo, CANFD_Enable_Transmit_Queue, P2_CANFD_Enable_Transmit_Event_Fifo, P2_CANFD_Set_Baudrate_Nominal, P2_CANFD_Set_Baudrate_Data, CANFD_Set_SID11, P2_CANFD_Set_TDC, P2_CANFD_Set_Mode Gültig für CAN-FD-2 Rev. E Beispiel siehe P2_CANFD_Init_Datatable ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 243 Aus einem Ausgangs-Fifo werden CANFD-Nachrichten in der Reihenfolge ge- sendet, wie sie eingestellt wurden. Siehe auch P2_CANFD_Get_Fifo_State, P2_CANFD_Write_TMO, P2_CANFD_Transmit_ Msg, P2_CANFD_Init_Datatable, P2_CANFD_Init_Controller, P2_CANFD_ Enable_Receive_Fifo, P2_CANFD_Enable_Transmit_Queue, P2_CANFD_ Enable_Transmit_Event_Fifo, P2_CANFD_Set_Baudrate_Nominal, CANFD_Set_Baudrate_Data, P2_CANFD_Set_SID11, P2_CANFD_Set_TDC, P2_CANFD_Set_Mode Gültig für CAN-FD-2 Rev. E Beispiel siehe P2_CANFD_Init_Datatable ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 244 Danach entscheidet die Reihenfolge, in der die Nachrichten eingestellt wurden. Siehe auch P2_CANFD_Get_Fifo_State, P2_CANFD_Write_TMO, P2_CANFD_Transmit_ Msg, P2_CANFD_Init_Datatable, P2_CANFD_Init_Controller, P2_CANFD_ Enable_Receive_Fifo, P2_CANFD_Enable_Transmit_Fifo, P2_CANFD_ Enable_Transmit_Event_Fifo, P2_CANFD_Set_Baudrate_Nominal, CANFD_Set_Baudrate_Data, P2_CANFD_Set_SID11, P2_CANFD_Set_TDC, P2_CANFD_Set_Mode Gültig für CAN-FD-2 Rev. E Beispiel siehe P2_CANFD_Init_Datatable ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 245 Ausgabepuffer) jeweils der Header sowie ggf. der zu- gehörige Zeitstempel gespeichert. Siehe auch P2_CANFD_Get_Fifo_State, P2_CANFD_Read_EFO, P2_CANFD_Init_Data- table, P2_CANFD_Init_Controller, P2_CANFD_Enable_Receive_Fifo, CANFD_Enable_Transmit_Fifo, P2_CANFD_Enable_Transmit_Queue, CANFD_Set_Baudrate_Nominal, P2_CANFD_Set_Baudrate_Data,, CANFD_Set_SID11, P2_CANFD_Set_TDC, P2_CANFD_Set_Mode Gültig für CAN-FD-2 Rev. E Beispiel siehe P2_CANFD_Init_Datatable ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 246 Feld canfd_data[] abgelegt. Alle Einstellungen werden mit P2_CANFD_Init_Controller in den Controller übertragen. Siehe auch P2_CANFD_Set_Baudrate_Data, P2_CANFD_Init_Datatable, P2_CANFD_ Init_Controller, P2_CANFD_Enable_Receive_Fifo, P2_CANFD_Enable_ Transmit_Fifo, P2_CANFD_Enable_Transmit_Queue, P2_CANFD_Enable_ Transmit_Event_Fifo, P2_CANFD_Set_Baudrate_Data, P2_CANFD_Set_ SID11, P2_CANFD_Set_TDC, P2_CANFD_Set_Mode Gültig für CAN-FD-2 Rev. E Beispiel siehe P2_CANFD_Init_Datatable ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 247 Feld canfd_data[] abgelegt. Alle Einstellungen werden mit P2_CANFD_Init_Controller in den Controller übertragen. Siehe auch P2_CANFD_Set_Baudrate_Nominal, P2_CANFD_Init_Datatable, CANFD_Init_Controller, P2_CANFD_Enable_Receive_Fifo, P2_CANFD_ Enable_Transmit_Fifo, P2_CANFD_Enable_Transmit_Queue, P2_CANFD_ Enable_Transmit_Event_Fifo, P2_CANFD_Set_Baudrate_Nominal, CANFD_Set_SID11, P2_CANFD_Set_TDC, P2_CANFD_Set_Mode Gültig für CAN-FD-2 Rev. E Beispiel siehe P2_CANFD_Init_Datatable ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 248 Wenn jedoch Nachrichten mit erweiterter Länge (29 Bit) übertragen werden, wird die Einstellung für das Zusatzbit ignoriert. Siehe auch P2_CANFD_Init_Datatable, P2_CANFD_Init_Controller, P2_CANFD_Enable_ Receive_Fifo, P2_CANFD_Enable_Transmit_Fifo, P2_CANFD_Enable_ Transmit_Queue, P2_CANFD_Enable_Transmit_Event_Fifo, P2_CANFD_ Set_Baudrate_Nominal, P2_CANFD_Set_Baudrate_Data, P2_CANFD_Set_ Mode Gültig für CAN-FD-2 Rev. E Beispiel siehe P2_CANFD_Init_Datatable ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 249 Ausgleich verwendet der Controller den übergebenen Wert tdcv. Siehe auch P2_CANFD_Init_Datatable, P2_CANFD_Init_Controller, P2_CANFD_Enable_ Receive_Fifo, P2_CANFD_Enable_Transmit_Fifo, P2_CANFD_Enable_ Transmit_Queue, P2_CANFD_Enable_Transmit_Event_Fifo, P2_CANFD_ Set_Baudrate_Nominal, P2_CANFD_Set_Baudrate_Data, P2_CANFD_Set_ SID11, P2_CANFD_Set_Mode Gültig für CAN-FD-2 Rev. E Beispiel siehe P2_CANFD_Init_Datatable ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 250 Feld canfd_data[] abgelegt. Alle Einstellungen werden mit P2_CANFD_Init_Controller in den Controller übertragen. Siehe auch P2_CANFD_Init_Datatable, P2_CANFD_Init_Controller, P2_CANFD_Enable_ Receive_Fifo, P2_CANFD_Enable_Transmit_Fifo, P2_CANFD_Enable_ Transmit_Queue, P2_CANFD_Enable_Transmit_Event_Fifo, P2_CANFD_ Set_Baudrate_Nominal, P2_CANFD_Set_Baudrate_Data, P2_CANFD_Set_ SID11, P2_CANFD_Set_TDC Gültig für CAN-FD-2 Rev. E Beispiel siehe P2_CANFD_Init_Datatable ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 251 Wenn beim Senden Störungen auftreten, bleibt die Nachricht im Fifo erhalten und wird später erneut gesendet. Sobald erfolgreich gesendet wurde, werden Fehler-Statusbits zurückgesetzt. Siehe auch P2_CANFD_Read_RMO, P2_CANFD_Write_TMO Gültig für CAN-FD-2 Rev. E Beispiel ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 252 = P2_CANFD_Enable_Receive_Fifo(InFifo, 07H, 004H, 1, 005H, 01FFFFFFFH, IDE, DataCANFD2) P2_CANFD_Init_Controller(DataCANFD3)'initialize channel Event: REM check for fifo overflow ((P2_CANFD_Get_Fifo_State(module, ch, inFifo) 1000b) = 1000b) Then REM read CAN message = P2_CANFD_Read_RMO(inFifo, can_msg, DataCANFD3) Par_10 EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 253 Nachricht vollständig empfangen war. Bei anderer Einstellung enthält keinen sinnvollen Wert. can_msg[3] Sie können mit besondere Fifo-Eigenschaften P2_CANFD_Get_Fifo_State prüfen, beispielsweise ob Nachrichten verloren gegangen sind. Siehe auch P2_CANFD_Init_Controller, P2_CANFD_Enable_Receive_Fifo, P2_CANFD_ Write_TMO Gültig für CAN-FD-2 Rev. E Beispiel ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 254 13 / 5 12 / 4 11 / 3 10 / 2 9 / 1 8 / 0 can_msg[1] 31:24 – – SID11 EID (17:6) 23:16 EID (12:5) 15:8 EID (4:0) SID (10:8) SID (7:0) can_msg[2] ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 255 SID (10:0) EID (17:0) SID (10:0) Siehe auch P2_CANFD_Read_RMO, P2_CANFD_Get_ID, P2_CANFD_Get_ESI, CANFD_Get_FDF, P2_CANFD_Get_BRS, P2_CANFD_Get_RTR, CANFD_Get_IDE, P2_CANFD_Get_DLC, P2_CANFD_Get_SEQ, CANFD_Set_SID11 Gültig für CAN-FD-2 Rev. E Beispiel siehe Beispieloberfläche ADwinCANFDUserInterface.adi und zugehöriges Programm Pro2_CANFD_sample_Code.bas im Ordner C:\ADwin\ADbasic\samples_ADwin_ProII\CAN FD. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 256 SID (10:0) erhalten Sie alle Parameter des Nach- P2_CANFD_Get_Header_Parts richten-Headers auf einmal. Siehe auch P2_CANFD_Set_SID11, P2_CANFD_Read_RMO, P2_CANFD_Get_IDE, CANFD_Get_ESI, P2_CANFD_Get_FDF, P2_CANFD_Get_BRS, CANFD_Get_RTR, P2_CANFD_Get_DLC Gültig für CAN-FD-2 Rev. E Beispiel #Include ADwinPro_All.inc REM XXX Beispiel fehlt ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 257 Beispieloberfläche ADwinCANFDUserInter- face.adi und zugehöriges Programm Pro2_CANFD_sample_Code.bas im Ordner C:\ADwin\ADbasic\samples_ADwin_ProII\CAN FD.P2_ CANFD_Get_Header_Parts, P2_CANFD_Get_ID, P2_CANFD_Get_FDF, CANFD_Get_BRS, P2_CANFD_Get_RTR, P2_CANFD_Get_IDE, CANFD_Get_DLC Gültig für CAN-FD-2 Rev. E Beispiel siehe Beispieloberfläche ADwinCANFDUserInterface.adi und zugehöriges Programm Pro2_CANFD_sample_Code.bas im Ordner C:\ADwin\ADbasic\samples_ADwin_ProII\CAN FD. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 258 1: Format CAN FD. Bemerkungen erhalten Sie alle Parameter des Nach- P2_CANFD_Get_Header_Parts richten-Headers auf einmal. Siehe auch P2_CANFD_Read_RMO, P2_CANFD_Get_ID, P2_CANFD_Get_ESI, CANFD_Get_BRS, P2_CANFD_Get_RTR, P2_CANFD_Get_IDE, CANFD_Get_DLC Gültig für CAN-FD-2 Rev. E Beispiel #Include ADwinPro_All.inc REM XXX Beispiel fehlt ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 259 Sie alle Parameter des Nach- P2_CANFD_Get_Header_Parts richten-Headers auf einmal. Siehe auch P2_CANFD_Read_RMO, P2_CANFD_Get_ID, P2_CANFD_Get_ESI, CANFD_Get_FDF, P2_CANFD_Get_RTR, P2_CANFD_Get_IDE, CANFD_Get_DLC Gültig für CAN-FD-2 Rev. E Beispiel siehe Beispieloberfläche ADwinCANFDUserInterface.adi und zugehöriges Programm Pro2_CANFD_sample_Code.bas im Ordner C:\ADwin\ADbasic\samples_ADwin_ProII\CAN FD. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 260 1: Nachricht wird von extern angefordert (RTR) . Bemerkungen erhalten Sie alle Parameter des Nach- P2_CANFD_Get_Header_Parts richten-Headers auf einmal. Siehe auch P2_CANFD_Read_RMO, P2_CANFD_Get_ID, P2_CANFD_Get_ESI, CANFD_Get_FDF, P2_CANFD_Get_BRS, P2_CANFD_Get_IDE, CANFD_Get_DLC Gültig für CAN-FD-2 Rev. E Beispiel #Include ADwinPro_All.inc REM XXX Beispiel fehlt ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 261 Sie alle Parameter des Nach- P2_CANFD_Get_Header_Parts richten-Headers auf einmal. Siehe auch P2_CANFD_Read_RMO, P2_CANFD_Get_ID, P2_CANFD_Get_ESI, CANFD_Get_FDF, P2_CANFD_Get_BRS, P2_CANFD_Get_RTR, CANFD_Get_DLC Gültig für CAN-FD-2 Rev. E Beispiel siehe Beispieloberfläche ADwinCANFDUserInterface.adi und zugehöriges Programm Pro2_CANFD_sample_Code.bas im Ordner C:\ADwin\ADbasic\samples_ADwin_ProII\CAN FD. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 262 Sie alle Parameter des Nach- P2_CANFD_Get_Header_Parts richten-Headers auf einmal. Siehe auch P2_CANFD_Read_RMO, P2_CANFD_Get_ID, P2_CANFD_Get_ESI, CANFD_Get_FDF, P2_CANFD_Get_BRS, P2_CANFD_Get_RTR, CANFD_Get_IDE Gültig für CAN-FD-2 Rev. E Beispiel siehe Beispieloberfläche ADwinCANFDUserInterface.adi und zugehöriges Programm Pro2_CANFD_sample_Code.bas im Ordner C:\ADwin\ADbasic\samples_ADwin_ProII\CAN FD. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 263 P2_CANFD_Write_TMO Controller übergeben wird und im Überwachungs-Fifo die Nachverfolgung von Nachrichten ermöglicht. Siehe auch P2_CANFD_Read_EFO, P2_CANFD_Write_TMO Gültig für CAN-FD-2 Rev. E Beispiel siehe Beispieloberfläche ADwinCANFDUserInterface.adi und zugehöriges Programm Pro2_CANFD_sample_Code.bas im Ordner C:\ADwin\ADbasic\samples_ADwin_ProII\CAN FD. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 264 Sie die übrigen Bestandteile des Nach- CANFD_Get_Header_Parts richten-Headers aus msg[]. Siehe auch P2_CANFD_Enable_Transmit_Event_Fifo, P2_CANFD_Write_TMO, CANFD_Get_SEQ, P2_CANFD_Init_Controller Gültig für CAN-FD-2 Rev. E Beispiel siehe Beispieloberfläche ADwinCANFDUserInterface.adi und zugehöriges Programm Pro2_CANFD_sample_Code.bas im Ordner C:\ADwin\ADbasic\samples_ADwin_ProII\CAN FD. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 265 Reihenfolge gesendet, wie sie eingestellt wurden. Aus dem Ausgabepuffer (fifo_no = 0) werden CANFD-Nachrichten in der Reihenfolge ihrer Priorität gesendet, d.h. die Nachricht mit der jeweils kleinsten ID wird zuerst gesendet. Siehe auch P2_CANFD_Enable_Transmit_Fifo, P2_CANFD_Enable_Transmit_Queue, P2_CANFD_Init_Controller, P2_CANFD_Read_EFO, P2_CANFD_Get_SEQ, P2_CANFD_Read_RMO ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 266 ADwin Pro II: CAN FD-Bus P2_CANFD_Write_TMO Gültig für CAN-FD-2 Rev. E Beispiel siehe Beispieloberfläche ADwinCANFDUserInterface.adi und zugehöriges Programm Pro2_CANFD_sample_Code.bas im Ordner C:\ADwin\ADbasic\samples_ADwin_ProII\CAN FD. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 267 Senden zurückgesetzt. Zum erneuten Senden muss die Freigabe für den Fifo anschließend wieder neu erteilt werden. Siehe auch P2_CANFD_Transmit_Multi_Msg, P2_CANFD_Enable_Transmit_Fifo, CANFD_Enable_Transmit_Queue, P2_CANFD_Write_TMO Gültig für CAN-FD-2 Rev. E Beispiel siehe Beispieloberfläche ADwinCANFDUserInterface.adi und zugehöriges Programm Pro2_CANFD_sample_Code.bas im Ordner C:\ADwin\ADbasic\samples_ADwin_ProII\CAN FD. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 268 Sie finden die Registernummern des CAN-Controllers AN82527 im Intel -Da- tenblatt (Address map). Beispiele sind: • Adresse 00h: Kontroll-Register • Adresse 01h: Status-Register • Adresse 5fh: Interrupt-Register ® Sie finden die Registernummern des CAN-Controllers AN82527 im Intel -Da- tenblatt. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 269 TEC (Bits 8…15): Fehleranzahl des Senders. • REC (Bits 0…7): Fehleranzahl des Empfängers. Siehe auch P2_CANFD_Enable_Transmit_Fifo, P2_CANFD_Init_Controller, P2_CANFD_ Read_EFO Gültig für CAN-FD-2 Rev. E Beispiel siehe Beispieloberfläche ADwinCANFDUserInterface.adi und zugehöriges Programm Pro2_CANFD_sample_Code.bas im Ordner C:\ADwin\ADbasic\samples_ADwin_ProII\CAN FD. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 270 Baudrate. • NRERRCNT (Bits 7…0): Fehleranzahl beim Empfangen mit nominaler Baudrate. Siehe auch P2_CANFD_Enable_Transmit_Fifo, P2_CANFD_Init_Controller, P2_CANFD_ Read_EFO Gültig für CAN-FD-2 Rev. E Beispiel siehe Beispieloberfläche ADwinCANFDUserInterface.adi und zugehöriges Programm Pro2_CANFD_sample_Code.bas im Ordner C:\ADwin\ADbasic\samples_ADwin_ProII\CAN FD. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 271 NBIT0ERR (Bit 16): Es sollte eine logische 0 gesendet werden, aber auf dem Bus wurde eine logische 1 beobachtet (bei nominaler Baudrate). • EFMSGCNT (Bits 0…15): Anzahl fehlerfreie Nachrichten. Siehe auch P2_CANFD_Enable_Transmit_Fifo, P2_CANFD_Init_Controller, P2_CANFD_ Read_EFO Gültig für CAN-FD-2 Rev. E Beispiel ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 272 ADwin Pro II: CAN FD-Bus P2_CANFD_Get_BDIAG1 siehe Beispieloberfläche ADwinCANFDUserInterface.adi und zugehöriges Programm Pro2_CANFD_sample_Code.bas im Ordner C:\ADwin\ADbasic\samples_ADwin_ProII\CAN FD. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 273: Pro Ii: Lin-Bus-Schnittstelle

    – P2_LIN_Ch_Read_Cnt (Seite 278) – P2_LIN_Msg_Read_Status (Seite 279) – P2_LIN_Msg_Write (Seite 280) – P2_LIN_Msg_Transmit (Seite 281) – P2_LIN_Set_LED (Seite 282) Die Befehlsübersicht nach Modulen (Anhang A.2) zeigt, welche Befehle für einen Modultyp anwendbar sind. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 274 LIN-Modul ausgeführt werden. Der Befehl sollte im Abschnitt stehen. Init: Bei der Initialisierung muss für jedes Modul ein Feld lin_datatable[] 150 Elementen angelegt werden. Siehe auch P2_LIN_Init_Write, P2_LIN_Init_Apply, P2_LIN_Reset, P2_LIN_Get_Version, P2_LIN_Read_Dat, P2_LIN_Ch_Read_Cnt, P2_LIN_Msg_Read_Status, LIN_Msg_Write, P2_LIN_Msg_Transmit Gültig für LIN-2 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 275 = Data_2[6] Par_15 = Data_2[7] Par_16 = Data_2[8] Par_17 = Data_2[9] Par_18 = Data_2[10] Par_19 = Data_2[11] 'Byte 8 Par_20 = Data_2[12] 'checksum Par_21 = Data_2[13] 'length Par_10 state 'new Msg tx EndIf EndSelect ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 276 P2_LIN_Init_Write gender Standard-Einstellung: • Baudrate 9600 Baud • Betrieb als Slave • Prüfsummenversion „classic“. Siehe auch P2_LIN_Init, P2_LIN_Init_Apply, P2_LIN_Reset, P2_LIN_Get_Version, LIN_Read_Dat, P2_LIN_Ch_Read_Cnt, P2_LIN_Msg_Read_Status, P2_LIN_ Msg_Write, P2_LIN_Msg_Transmit Gültig für LIN-2 Rev. E Beispiel siehe P2_LIN_Init ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 277 ADwin CPU und LIN-Modul enthält. datatable[] LONG Bemerkungen verändert die Einstellungsdaten der LIN-Schnittstellen P2_LIN_Init_Apply nicht. Siehe auch P2_LIN_Init, P2_LIN_Init_Write, P2_LIN_Reset, P2_LIN_Get_Version, LIN_Read_Dat, P2_LIN_Ch_Read_Cnt, P2_LIN_Msg_Read_Status, P2_LIN_ Msg_Write, P2_LIN_Msg_Transmit Gültig für LIN-2 Rev. E Beispiel siehe P2_LIN_Init ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 278 Baudrate 9600 Baud • Betrieb als Slave • interne Zähler (Nachrichten, Timeout) auf 0. Siehe auch P2_LIN_Init, P2_LIN_Init_Write, P2_LIN_Init_Apply, P2_LIN_Get_Version, LIN_Read_Dat, P2_LIN_Ch_Read_Cnt, P2_LIN_Msg_Read_Status, P2_LIN_ Msg_Write, P2_LIN_Msg_Transmit Gültig für LIN-2 Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 279 Die Versionsnummer wird nur benötigt, wenn Sie Fragen zur Programmierung des LIN-Bus an unseren Support haben. Siehe auch P2_LIN_Init, P2_LIN_Init_Write, P2_LIN_Init_Apply, P2_LIN_Reset, P2_LIN_ Read_Dat, P2_LIN_Ch_Read_Cnt, P2_LIN_Msg_Read_Status, P2_LIN_Msg_ Write, P2_LIN_Msg_Transmit Gültig für LIN-2 Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 280 Pausenzeit in µs zwischen 2 Datenbytes. Standard: 0. Anzahl aufgetretener Timeout-Fehler für diese Nachricht. 1: neue Nachricht wurde gesendet / empfangen. -1: keine neue Nachricht -2: Nachricht wird gerade empfangen. -3: Nachricht mit Timeout-Fehler -4: Checksummenfehler beim Empfang. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 281 Ein erkannter Wake Request (ab Rev. E04) wird auf 0 zurückgesetzt, sobald der Master am Busverkehr teilnimmt. Siehe auch P2_LIN_Init, P2_LIN_Init_Write, P2_LIN_Init_Apply, P2_LIN_Reset, P2_LIN_ Get_Version, P2_LIN_Ch_Read_Cnt, P2_LIN_Msg_Read_Status, P2_LIN_ Msg_Write, P2_LIN_Msg_Transmit, P2_LIN_Msg_Read_Status, P2_LIN_Ch_ Read_Cnt Gültig für LIN-2 Rev. E Beispiel siehe P2_LIN_Init ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 282 Der Anzahl der Nachrichten (und andere Informationen) kann auch mit dem Be- fehl gelesen werden. P2_LIN_Read_Dat Siehe auch P2_LIN_Init, P2_LIN_Init_Write, P2_LIN_Init_Apply, P2_LIN_Reset, P2_LIN_ Get_Version, P2_LIN_Read_Dat, P2_LIN_Msg_Read_Status, P2_LIN_Msg_ Write, P2_LIN_Msg_Transmit Gültig für LIN-2 Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 283 Der Status (und andere Informationen) kann auch mit dem Befehl P2_LIN_ gelesen werden. Read_Dat Siehe auch P2_LIN_Init, P2_LIN_Init_Write, P2_LIN_Init_Apply, P2_LIN_Reset, P2_LIN_ Get_Version, P2_LIN_Read_Dat, P2_LIN_Ch_Read_Cnt, P2_LIN_Msg_Write, P2_LIN_Msg_Transmit Gültig für LIN-2 Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 284 Header mit dem zur Messagebox passenden Identifier sendet, empfängt anschließend das Datenpaket und trägt es in die Messagebox ein. Siehe auch P2_LIN_Init, P2_LIN_Init_Write, P2_LIN_Init_Apply, P2_LIN_Reset, P2_LIN_ Get_Version, P2_LIN_Read_Dat, P2_LIN_Ch_Read_Cnt, P2_LIN_Msg_ Read_Status, P2_LIN_Msg_Transmit Gültig für LIN-2 Rev. E Beispiel siehe P2_LIN_Init ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 285 Pegel, anschließend wird wieder der Ruhepegel gesetzt. Das Wakeup-Signal kann nur im Betriebsmodus LIN Slave ausgelöst werden. Siehe auch P2_LIN_Init, P2_LIN_Init_Write, P2_LIN_Init_Apply, P2_LIN_Reset, P2_LIN_ Get_Version, P2_LIN_Read_Dat, P2_LIN_Ch_Read_Cnt, P2_LIN_Msg_ Read_Status, P2_LIN_Msg_Write Gültig für LIN-2 Rev. E Beispiel siehe P2_LIN_Init ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 286 - / - Siehe auch P2_Set_LED Gültig für LIN-2 Rev. E Beispiel #Include ADwinPro_All.inc lin_datatable[150] As Long ret_val As Long Init: Rem LIN-Controller initialisieren ret_val = P2_LIN_Init(1, lin_datatable) P2_LIN_Set_LED(1,1,3) 'Setze LED 1 auf orange ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 287: Pro Ii: Pwm-Ausgänge

    – P2_PWM_Latch (Seite 288) – P2_PWM_Reset (Seite 289) – P2_PWM_Standby_Value (Seite 290) – P2_PWM_Write_Latch (Seite 291) – P2_PWM_Write_Latch_Block (Seite 292) Die Befehlsübersicht nach Modulen (Anhang A.2) zeigt, welche Befehle für einen Modultyp anwendbar sind. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 288 Wann die PWM-Ausgänge gesperrt werden – sofort oder nach dem nächsten Periodenende – hängt von der Einstellung ab, die mit gemacht P2_PWM_Init wurde (Parameter mode). Siehe auch P2_PWM_Get_Status, P2_PWM_Init, P2_PWM_Latch, P2_PWM_Reset, PWM_Standby_Value, P2_PWM_Write_Latch, P2_PWM_Write_Latch_Block Gültig für PWM-16(-I) Rev. E Beispiel siehe P2_PWM_Init (Seite 286) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 289 Bit = 0: PWM-Ausgang ist gesperrt. Bit = 1: PWM-Ausgang ist freigegeben. Bitnr. 31:16 … – … PWM-Ausgang Bemerkungen - / - Siehe auch P2_PWM_Enable, P2_PWM_Init, P2_PWM_Latch, P2_PWM_Reset, PWM_Standby_Value, P2_PWM_Write_Latch_Block Gültig für PWM-16(-I) Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 290 P2_PWM_Reset sie mit P2_PWM_Enable, um die Voreinstellungen zu ändern. Anschließend ge- ben Sie die PWM-Ausgänge wieder zur Ausgabe frei. Siehe auch P2_PWM_Enable, P2_PWM_Get_Status, P2_PWM_Latch, P2_PWM_Reset, P2_PWM_Standby_Value, P2_PWM_Write_Latch_Block Gültig für PWM-16(-I) Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 291 As Long Init: freq1 1000 '1000 Hz freq2 2000 '2000 Hz '50 % '70 % P2_PWM_Reset(module,011b) 'stop channels 1 und 2 channel P2_PWM_Init(module,channel,0,0,0,1) Next P2_PWM_Write_Latch(module,1,pw1,freq1) P2_PWM_Write_Latch(module,2,pw2,freq2) P2_PWM_Latch(module,11b) P2_PWM_Enable(module,011b)'start output Event: P2_PWM_Write_Latch(module,1,pw1,freq1) P2_PWM_Write_Latch(module,2,pw2,freq2) P2_PWM_Latch(module,11b) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 292 Das Schreiben ins Ausgangsregister kann synchron mit Aktionen auf anderen Modulen gestartet werden. Verwenden Sie hierzu den Befehl P2_Sync_All. Siehe auch P2_PWM_Enable, P2_PWM_Get_Status, P2_PWM_Init, P2_PWM_Reset, P2_PWM_Standby_Value, P2_PWM_Write_Latch, P2_PWM_Write_Latch_ Block, P2_Sync_All Gültig für PWM-16(-I) Rev. E Beispiel siehe P2_PWM_Init (Seite 286) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 293 Die Ausgabe wird auch dann sofort gestoppt, wenn mit ein an- P2_PWM_Init derer Modus eingestellt ist. Siehe auch P2_PWM_Enable, P2_PWM_Get_Status, P2_PWM_Init, P2_PWM_Latch, PWM_Standby_Value, P2_PWM_Write_Latch_Block Gültig für PWM-16(-I) Rev. E Beispiel siehe P2_PWM_Init (Seite 286) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 294 PWM-Ausgang stoppt. Nach dem Einschalten sind die Ausgänge zunächst auf TTL-Pegel low gesetzt. Siehe auch P2_PWM_Enable, P2_PWM_Get_Status, P2_PWM_Init, P2_PWM_Latch, PWM_Reset, P2_PWM_Write_Latch_Block Gültig für PWM-16(-I) Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 295 Wenn mehrere PWM-Ausgänge mit den gleichen Daten betrieben werden sol- len, ist der Befehl schneller. P2_PWM_Write_Latch_Block Siehe auch P2_PWM_Enable, P2_PWM_Get_Status, P2_PWM_Init, P2_PWM_Latch, PWM_Reset, P2_PWM_Standby_Value, P2_PWM_Write_Latch_Block Gültig für PWM-16(-I) Rev. E Beispiel siehe P2_PWM_Init (Seite 286) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 296 'channel 1: 1 kHz, channel 16: 16 KHz pw[channel] = 'all channels 50 % Next P2_PWM_Reset(module,0FFFFh)'stop all channels channel P2_PWM_Init(module,channel,0,0,0,0) Next P2_PWM_Write_Latch_Block(module, pw, freq, 3) P2_PWM_Latch(module,0FFFFh) P2_PWM_Enable(module,0FFFFh)'start output Event: P2_PWM_Write_Latch_Block(module, pw, freq, 3) P2_PWM_Latch(module,11b) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 297 ADwin Pro II: PWM-Ausgänge P2_PWM_Write_Latch_Block ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 298: Pro Ii: Temperaturmess-Module

    – P2_TC_Latch (Seite 304) – P2_TC_Read_Latch (Seite 305) – P2_TC_Read_Latch4 (Seite 307) – P2_TC_Read_Latch8 (Seite 309) – P2_TC_Set_Rate (Seite 311) Die Befehlsübersicht nach Modulen (Anhang A.2) zeigt, welche Befehle für einen Modultyp anwendbar sind. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 299 Messdauer. Mit einem geeigneten Wert für das Abtastintervall können Sie sample_period den Filter für eine bestimmte Störfrequenz optimieren. Berechnen Sie dazu das Abtastintervall (in Mikrosekunden) wie folgt: sample_period filter Frequenz 2 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 300 Bei der 3-Leiter-Messung ist die Messdauer T doppelt so lang, denn hier müs- sen doppelt so viele Messungen durchgeführt werden. Siehe auch P2_RTD_Config, P2_RTD_Convert, P2_RTD_Read, P2_RTD_Read8, RTD_Start, P2_RTD_Status Gültig für RTD-8 Rev. E Beispiel siehe P2_RTD_Start ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 301 Messzyklus ist die Summe aus den Messdauern der Gesamt aktiven Messkanäle und der Einschwingzeit: Anz. Kanäle Einschwingzeit Gesamt Kanal Siehe auch P2_RTD_Channel_Config, P2_RTD_Convert, P2_RTD_Read, P2_RTD_ Read8, P2_RTD_Start, P2_RTD_Status Gültig für RTD-8 Rev. E Beispiel siehe P2_RTD_Start ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 302 Grundwertreihe der IEC 751 (= EN 60751: 1990) verwendet, für Ni die IEC 43760. Der Messwert ist deswegen nur für Temperaturfühler richtig, die diesen Normen entsprechen. Siehe auch P2_RTD_Channel_Config, P2_RTD_Config, P2_RTD_Read, P2_RTD_Read8, P2_RTD_Start, P2_RTD_Status Gültig für RTD-8 Rev. E Beispiel siehe P2_RTD_Start ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 303 Im Modus „single shot“ darf ein Messwert erst gelesen werden, wenn der Mess- zyklus beendet ist (siehe P2_RTD_Status). Siehe auch P2_RTD_Channel_Config, P2_RTD_Config, P2_RTD_Convert, P2_RTD_ Read8, P2_RTD_Start, P2_RTD_Status Gültig für RTD-8 Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 304 Es werden immer 8 Messwerte in dem Zielfeld gespeichert, auch wenn der Messzyklus aus weniger als 8 Messkanälen besteht. Die Messwerte werden mit aufsteigender Kanalnummer gespeichert. Siehe auch P2_RTD_Channel_Config, P2_RTD_Config, P2_RTD_Convert, P2_RTD_ Read, P2_RTD_Start, P2_RTD_Status Gültig für RTD-8 Rev. E Beispiel siehe P2_RTD_Start ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 305 Bevor Sie den Temperatur-Messzyklus starten, müssen Sie den Betriebsmodus für die Module mit und für die einzelnen Kanäle mit P2_RTD_Config P2_RTD_ festlegen. Config_Channel Siehe auch P2_RTD_Channel_Config, P2_RTD_Config, P2_RTD_Convert, P2_RTD_ Read, P2_RTD_Read8, P2_RTD_Status Gültig für RTD-8 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 306 = P2_RTD_status(module) (status = 0) Then run_state Case Rem read measured values and prepare start of next cycle P2_RTD_read8(module, values24, 1) 'messwerte lesen Rem convert measurement values fpar[i] = P2_RTD_convert(values24[i], 0, 1) Next run_state EndSelect ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 307 0: Messzyklus ist beendet. 1: Messzyklus wird ausgeführt. Bemerkungen Der Befehl ist nur sinnvoll für den Betriebsmodus „single P2_RTD_Status shot“. Siehe auch P2_RTD_Channel_Config, P2_RTD_Config, P2_RTD_Convert, P2_RTD_ Read, P2_RTD_Read8, P2_RTD_Start Gültig für RTD-8 Rev. E Beispiel siehe P2_RTD_Start ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 308 TC-8-ISO Rev. E Beispiel #Include ADwinPro_All.Inc Init: Rem Set sampling rate to 27.5 Hz P2_TC_Set_Rate(1,8) Event: Rem copy values to latches P2_TC_Latch(1) Rem Read temperature from channel 5, thermo couple K in °C FPar_1 = P2_TC_Read_Latch(1,5,1,1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 309 Temperaturfühler richtig, die dieser Norm entsprechen. Die Werteberei- che sind: Temperatur- Temperatur- Thermo- bereich [°C] bereich [°F] spannung [µV] 250…1820 482…3329,6 291…13820 -200…1000 -328…1832 -8825…76373 -210…1200 -346…2192 -8095…69553 -200…1372 -328…2501,6 -5891…54886 -200…1300 -328…2372 -3990…47513 -50…1768 -58…3214,4 -226…21101 -50…1768 -58…3214,4 -236…18693 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 310 TC-8-ISO Rev. E Beispiel #Include ADwinPro_All.Inc Init: Rem Set sampling rate to 27.5 Hz P2_TC_Set_Rate(1,8) Event: Rem copy values to latches P2_TC_Latch(1) Rem Read temperature from channel 5, thermo couple K in °C FPar_1 = P2_TC_Read_Latch(1,5,1,1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 311 Temperaturfühler richtig, die dieser Norm entsprechen. Die Werteberei- che sind: Temperatur- Temperatur- Thermo- bereich [°C] bereich [°F] spannung [µV] 250…1820 482…3329,6 291…13820 -200…1000 -328…1832 -8825…76373 -210…1200 -346…2192 -8095…69553 -200…1372 -328…2501,6 -5891…54886 -200…1300 -328…2372 -3990…47513 -50…1768 -58…3214,4 -226…21101 -50…1768 -58…3214,4 -236…18693 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 312 Rem Set sampling rate to 27.5 Hz P2_TC_Set_Rate(1,8) Event: Rem copy values to latches P2_TC_Latch(1) Rem Read temperature from channels 1..4, thermo couple J in °F P2_TC_Read_Latch4(1,0,2,values,cnt) Rem increase counter (cnt > 1000) Then ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 313 Temperaturfühler richtig, die dieser Norm entsprechen. Die Werteberei- che sind: Temperatur- Temperatur- Thermo- bereich [°C] bereich [°F] spannung [µV] 250…1820 482…3329,6 291…13820 -200…1000 -328…1832 -8825…76373 -210…1200 -346…2192 -8095…69553 -200…1372 -328…2501,6 -5891…54886 -200…1300 -328…2372 -3990…47513 -50…1768 -58…3214,4 -226…21101 -50…1768 -58…3214,4 -236…18693 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 314 Rem Set sampling rate to 27.5 Hz P2_TC_Set_Rate(1,8) Event: Rem copy values to latches P2_TC_Latch(1) Rem Read temperature from channels 1..8, thermo couple J in °F P2_TC_Read_Latch8(1,0,2,values,cnt) Rem increase counter (cnt > 1000) Then ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 315 Mit steigender Abtastrate steigt das Rauschsignal, das am ADC eines Kanals entsteht und das eintreffende Signal überlagert (siehe Tabelle). Siehe auch P2_TC_Latch, P2_TC_Read_Latch, P2_TC_Read_Latch4, P2_TC_Read_ Latch8 Gültig für TC-8-ISO Rev. E Beispiel #Include ADwinPro_All.Inc Init: Rem Set sampling rate to 27.5 Hz P2_TC_Set_Rate(1,8) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 316: Pro Ii: Dehnungsmessstreifen-Module

    316) – P2_SG_Read (Seite 317) – P2_SG_Convert (Seite 318) – P2_SG_Init (Seite 319) – P2_SG_Zero (Seite 321) – P2_SG_Set_Gain (Seite 322) Befehlsübersicht nach Modulen (Anhang A.2) zeigt, welche Befehle für einen Modultyp anwendbar sind. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 317 1 single shot: Die Ablaufsteuerung wird mit gestartet; die P2_SG_Start Ablaufsteuerung endet, sobald die gewählten Kanäle je ein- mal gewandelt sind. Das Ende der Ablaufsteuerung wird mit abge- P2_SG_Wait fragt und die Messwerte mit eingelesen. P2_SG_Read ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 318 Bei der Vierleiterschaltung wird die Sense-Leitung SX nicht angeschlossen. Die Lese- und Warte-Anweisungen beziehen sich immer und ausschließlich auf die Gruppe der hier ausgewählten Kanäle. Siehe auch P2_SG_Start, P2_SG_Wait, P2_SG_Read, P2_SG_Convert, P2_SG_Init, SG_Zero, P2_SG_Set_Gain Gültig für SG-4/18 Rev. E Beispiel siehe P2_SG_Init ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 319 Bit = 1: Moduladresse ansprechen. 31:15 14 … Bitmuster Moduladresse – … Bemerkungen - / - Siehe auch P2_SG_Mode, P2_SG_Wait, P2_SG_Read, P2_SG_Convert, P2_SG_Init, P2_SG_Zero, P2_SG_Set_Gain Gültig für SG-4/18 Rev. E Beispiel siehe P2_SG_Init ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 320 Bemerkungen Wenn Ablaufsteuerungen auf mehreren Modulen gleichzeitig (und mit gleichen Parametern) gestartet wurden, enden sie auch gleichzeitig. Siehe auch P2_SG_Mode, P2_SG_Start, P2_SG_Read, P2_SG_Convert, P2_SG_Init, P2_SG_Zero, P2_SG_Set_Gain Gültig für SG-4/18 Rev. E Beispiel siehe P2_SG_Init ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 321 Bits 23:6 des Rückgabewerts; der Messwert ist also um 6 Bits nach links verschoben und die Bits 5:0 sind Null. 31:24 23:6 Bitnr. Inhalt 18-Bit Messwert Siehe auch P2_SG_Mode, P2_SG_Start, P2_SG_Wait, P2_SG_Convert, P2_SG_Init, SG_Zero, P2_SG_Set_Gain Gültig für SG-4/18 Rev. E Beispiel siehe P2_SG_Init ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 322 Sie für den DMS-Kanal mit eingestellt haben. P2_SG_Init Für Analogeingänge, Sense-Leitung und Versorgungsspannung ist der Verstär- kungsfaktor immer 1 (gain=0). Siehe auch P2_SG_Mode, P2_SG_Start, P2_SG_Wait, P2_SG_Read, P2_SG_Init, SG_Zero, P2_SG_Set_Gain Gültig für SG-4/18 Rev. E Beispiel siehe P2_SG_Init ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 323: Auflösung

    Der Verstärkungsfaktor legt Messbereich und Signalauflösung der Brücken- spannung fest: gain Verstär- Messbereich Auflösung kung ±500mV 3,84µV ±250mV 1,92µV ±125mV 0,96µV ±62,5mV 0,48µV ±31,25mV 0,24µV ±15,625mV 0,12µV Siehe auch P2_SG_Mode, P2_SG_Start, P2_SG_Wait, P2_SG_Read, P2_SG_Convert, P2_SG_Zero, P2_SG_Set_Gain Gültig für SG-4/18 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 324 Rem get bridge voltage FPar[i] = P2_SG_Convert(Data_1[i], gain_B) 'bridge [mV] Next Rem get sense voltage FPar[i] = P2_SG_Convert(Data_1[i], 0)/1000 'excitation [V] Next Rem calculate relative strain FPar[i+8] = FPar[i] / FPar[4+i] 'strain [mV/V] Next ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 325 P2_SG_Mode, P2_SG_Set_Gain, P2_SG_Start, P2_SG_Wait, P2_SG_Read, P2_SG_Convert, P2_SG_Init Gültig für SG-4/18 Rev. E Beispiel #Include ADwinPro_All.inc module #Define LowInit: Rem set calibration mode P2_SG_Mode(module, 0, 0b) Rem calibrate channel 1 and save value Par_1 = P2_SG_Zero(module, 1, 1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 326 Abgleich des Verstärkungfaktors geladen und für Messungen verwen- det. Mit save=1 speichert die Werte für den Abgleich des P2_SG_Set_Gain Verstärkungfaktors dauerhaft im EEPROM des Moduls. Siehe auch P2_SG_Mode, P2_SG_Start, P2_SG_Wait, P2_SG_Read, P2_SG_Convert, P2_SG_Init, P2_SG_Zero Gültig für SG-4/18 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 327 P2_SG_Set_Gain Beispiel #Include ADwinPro_All.inc #Define module LowInit: Rem set calibration mode P2_SG_Mode(module, 0, 0b) Rem calibrate channel 5 with 4-wire-setting and 11.2 mv/V; Rem save value afterwards Par_1 = P2_SG_Set_Gain(module, 5, 11.2, 2, 1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 328: Pro Ii: Rsxxx

    – P2_RS485_Send (Seite 331) – P2_RS_Set_LED (Seite 332) – P2_Set_RS (Seite 333) – P2_Write_Fifo (Seite 334) – P2_Write_Fifo_Full (Seite 335) Die Befehlsübersicht nach Modulen (Anhang A.2) zeigt, welche Befehle für einen Modultyp anwendbar sind. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 329 P2_Write_Fifo_Full Gültig für RS422-4 Rev. E, RSxxx-2 Rev. E, RSxxx-4 Rev. E Beispiel #Include ADwinPro_All.Inc Event: Rem … Rem Prüft, ob Schnittstelle 1 noch Daten zu senden hat Par_1 = P2_Check_Shift_Reg(1, 1) Rem … ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 330 Instruments). Für allgemeine Anwendungen stehen Ihnen komfortablere Befeh- le aus der Include-Datei zur Verfügung. Siehe auch P2_Check_Shift_Reg, P2_Read_Fifo, P2_RS_Init, P2_RS_Reset, P2_RS485_ Send, P2_Set_RS, P2_Write_Fifo, P2_Write_Fifo_Full Gültig für RS422-4 Rev. E, RSxxx-2 Rev. E, RSxxx-4 Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 331 Event: Rem Einen Wert aus dem FIFO holen. Wenn der FIFO leer ist, Rem wird -1 zurückgeliefert. Par_1 = P2_Read_Fifo(1, 1) Siehe auch weitere Beispiele für RS232 und RS485 (Pro II) ab Seite 2084. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 332 Bandbreite von 35 … 2304 000 Bit/s. Ent- 0FFFFh sprechend der Spezifikation ist die RS232-Schnittstelle auf 115200 Bit/s be- schränkt. Die folgende Liste zeigt einige übliche Baudraten. Übliche Baudraten [Bit/s] 2304000 57600 2400 1152 000 38400 1200 460800 19200 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 333 Rem Initialisierung Schnittstelle 1 auf Modul 1 mit 9600 Baud, Rem ohne Parität, 8 Datenbits, 1 Stoppbit und Rem Hardware-Handshake (nur RS232). P2_RS_Init(1, 1, 9600, 0, 8, 0, 1) Siehe auch weitere Beispiele für RS232 und RS485 (Pro II) ab Seite 2084. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 334 Rem Initialisierung Schnittstelle 1 auf Modul 1 mit 9600 Baud, Rem ohne Parität, 8 Datenbits, 1 Stoppbit und Rem Hardware-Handshake (nur RS232). P2_RS_Init(1, 1, 9600, 0, 8, 0, 1) Siehe auch weitere Beispiele für RS232 und RS485 (Pro II) ab Seite 2084. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 335 P2_Check_Shift_Reg, P2_Get_RS, P2_Read_Fifo, P2_RS_Init, P2_RS_Re- set, P2_Set_RS, P2_Write_Fifo, P2_Write_Fifo_Full Gültig für RS422-4 Rev. E, RSxxx-2 Rev. E, RSxxx-4 Rev. E Beispiel RS485: Daten empfangen und sendenSiehe Beispiel „RS485: Daten empfangen und senden“ auf Seite 2101. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 336 Sie schalten die LED oben auf der Frontplatte mit P2_Set_LED. Siehe auch P2_Set_LED Gültig für RS422-4 Rev. E, RSxxx-2 Rev. E, RSxxx-4 Rev. E Beispiel #Include ADwinPro_All.inc Init: P2_RS_Set_LED(1, 1, 3) 'Setze LED 1 auf orange ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 337 TL16C754 von Texas Instruments). Für allgemeine Anwendungen stehen Ihnen komfortablere Befehle aus der Include-Datei zur Verfügung. Siehe auch P2_Check_Shift_Reg, P2_Get_RS, P2_Read_Fifo, P2_RS_Init, P2_RS_Re- set, P2_RS485_Send, P2_Write_Fifo, P2_Write_Fifo_Full Gültig für RS422-4 Rev. E, RSxxx-2 Rev. E, RSxxx-4 Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 338 Rem geschrieben. Anderenfalls enthält Par_1 den Wert 1 und zeigt Rem damit an, dass das Fifo-Feld nicht beschrieben werden konnte Rem (Fifo voll). Siehe auch weitere Beispiele für RS232 und RS485 (Pro II) ab Seite 2084. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 339 1: Sende-FIFO ist voll. Bemerkungen Der Rückgabewert ist der gleiche wie bei P2_Write_Fifo. Siehe auch P2_Check_Shift_Reg, P2_Get_RS, P2_Read_Fifo, P2_RS_Init, P2_RS_Re- set, P2_RS485_Send, P2_Set_RS, P2_Write_Fifo Gültig für RS422-4 Rev. E, RSxxx-2 Rev. E, RSxxx-4 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 340 ADwin Pro II: RSxxx P2_Write_Fifo_Full Beispiel Rem sending data to and receiving data from the PC while using Rem a Fifo in ADwin-Pro II #Include ADwinPro_All.inc #Define outfifo Data_1 #Define infifo Data_2 #Define rs_adr #Define rs_channel outfifo[1000] As Long As Fifo...
  • Seite 341 (green_led > 0) Then Inc green_led led_time = Read_Timer() EndIf EndIf ((red_led = 3) (green_led = 3)) Then red_led green_led EndIf Siehe auch weitere Beispiele für RS232 und RS485 (Pro II) ab Seite 2084. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 342: Pro Ii: Profibus/Profinet-Schnittstelle

    – P2_Run_Profibus (Seite 341) – P2_Init_Profibus_M40 (Seite 342) – P2_Run_Profibus_M40 (Seite 344) – P2_Init_ProfinetIO (Seite 345) – P2_Run_ProfinetIO (Seite 347) Die Befehlsübersicht nach Modulen (Anhang A.2) zeigt, welche Befehle für einen Modultyp anwendbar sind. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 343 Produkt aus der Anzahl der Datenbereiche und Profibus der Länge der Bereiche in Bytes. Beispiel: Für = 7 und = 3 ist die Gesamtanzahl 7 in_mod_cnt in_mod_type x 4 Bytes = 28 Bytes. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 344 0FFh Next Rem send and read data. data bytes input: 38x2=76; Rem data bytes output areas: 38x1=76) error = P2_Run_Profibus(module,out_arr,76,in_arr,76,conf_arr) error error Par_2 error Rem here the received data in in_arr[] can be processed ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 345 Länge der Bereiche in Bytes. Beispiel: Für = 7 und = 3 ist die Gesamtanzahl 7 in_mod_cnt in_mod_type x 4 Bytes = 28 Bytes. Siehe auch P2_Init_Profibus Gültig für Profi-SL Rev. E Beispiel siehe P2_Init_Profibus ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 346 Stationsadresse und die Anzahl der Datenelemente müssen die gleichen sein wie bei der Projektierung des Profibus. Die Datenbereiche werden bei der Pro- jektierung auch in Worten angegeben: 1 Wort = 2 Byte. Siehe auch P2_Run_Profibus_M40 Gültig für Profi-SL-40 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 347 = (out_arr[i] + i) 0FFh Next Rem send and read data. send 60 DWords, receive 30 DWords Par_2 = P2_Run_Profibus_M40(module, in_arr, out_arr, 30, 60, 1, conf_arr) Rem received data in in_arr[] can be processed ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 348 (nicht unterbrechbaren) hochprioren Prozess würde die Kommunikati- on zwischen PC und ADwin-System zu lange unterbrochen und daher eine Feh- lermeldung (Timeout) erzeugen. Siehe auch P2_Init_Profibus_M40 Gültig für Profi-SL-40 Rev. E Beispiel siehe P2_Init_Profibus ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 349 (nicht unterbrechbaren) hochprioren Prozess würde die Kommunikation zwischen PC und ADwin-System zu lange unterbrochen und daher eine Fehlermeldung (Timeout) erzeugen. Siehe auch - / - Gültig für Profi-IRT-CU-40 Rev. E, Profi-IRT-FO-40 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 350 = (out_arr[i] + i) Next Rem send and read data, flowrate slow state = P2_Run_ProfinetIO(module, out_arr, in_arr, 128, 256, conf_arr, 1) Par_2 state Rem now process received data stored in in_arr[1..128]; Rem in_arr[129..1000] remains unused here. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 351 In jedem Feldelement in werden 4 Daten- in_pd_arr[] out_pd_arr[] bytes = 1 Doppelwort gespeichert. Ein Doppelwort entspricht einem Wert vom Datentyp Long. Siehe auch P2_Init_ProfinetIO Gültig für Profi-IRT-CU-40 Rev. E, Profi-IRT-FO-40 Rev. E Beispiel siehe P2_Init_ProfinetIO ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 352: Pro Ii: Mil-Std-1553

    – P2_MIL_Reset (Seite 349) – P2_MIL_SMT_Init (Seite 350) – P2_MIL_SMT_Message_Read (Seite 351) – P2_MIL_SMT_Set_All_Filters (Seite 353) – P2_MIL_SMT_Set_Filter (Seite 354) – P2_MIL_Set_LED (Seite 355) – P2_MIL_Set_Register (Seite 356) – P2_MIL_Get_Register (Seite 357) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 353 Rem record RT 8, all subaddresses receive and transmit Par_2 = P2_MIL_SMT_Set_Filter(mod_adr, 8, 0FFh, 0FFh) Event: Rem check for new message Par_1 = P2_MIL_SMT_Message_Read(mod_adr, cmd_dat, msg_dat) (Par_1 >= 0) Then 'new message found Rem process message Rem … EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 354 Andere Monitor-Optionen (SMT 48 Bit, IRIG Monitor Terminal IMT) können ver- wendet werden, indem die entsprechenden Register gesetzt werden. Siehe auch P2_MIL_Reset, P2_MIL_SMT_Message_Read, P2_MIL_SMT_Set_All_Filters, P2_MIL_SMT_Set_Filter, P2_MIL_Set_LED Gültig für MIL-1553 Rev. E Beispiel siehe P2_MIL_Reset ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 355 1: Nachricht ist vollständig. SOM wird ebenfalls rückge- setzt. Beginn der Nachricht: 0: Nachricht ist beendet. 1: Nachricht hat begonnen = ein gültiger Befehl wurde vorher beendet. Verwendeter Bus: 0: Bus A. 1: Bus B. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 356 Sie finden weitere Informationen über Fehler in der separaten Dokumentation "HI-6310 / MIL-STD-1553 / BC/MT/RT Multi-Terminal Device" von Holt Integra- ted Circuits Inc. Siehe auch P2_MIL_Reset, P2_MIL_SMT_Init, P2_MIL_SMT_Set_All_Filters, P2_MIL_ SMT_Set_Filter, P2_MIL_Set_LED Gültig für MIL-1553 Rev. E Beispiel siehe P2_MIL_Reset ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 357 Unteradresse sowie das Statusbit für Senden / Empfangen im Befehlswort. Sie erhalten das Befehlswort mit P2_MIL_SMT_Message_Read im Feldelement cmd_dat[4]. Siehe auch P2_MIL_Reset, P2_MIL_SMT_Init, P2_MIL_SMT_Message_Read, P2_MIL_ SMT_Set_Filter, P2_MIL_Set_LED Gültig für MIL-1553 Rev. E Beispiel siehe P2_MIL_Reset ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 358 Unteradresse sowie das Statusbit für Senden / Empfangen im Befehlswort. Sie erhalten das Befehlswort mit P2_MIL_SMT_Message_Read im Feldelement cmd_dat[4]. Siehe auch P2_MIL_Reset, P2_MIL_SMT_Init, P2_MIL_SMT_Message_Read, P2_MIL_ SMT_Set_All_Filters, P2_MIL_Set_LED Gültig für MIL-1553 Rev. E Beispiel siehe P2_MIL_Reset ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 359 P2_MIL_Reset, P2_MIL_SMT_Init, P2_MIL_SMT_Message_Read, P2_MIL_ SMT_Set_All_Filters, P2_MIL_SMT_Set_Filter, P2_Set_LED Gültig für MIL-1553 Rev. E Beispiel #Include ADwinPro_All.Inc #Define mod_adr Init: Rem initialize MIL controller Par_1 = P2_MIL_Reset(mod_adr) (Par_1 <> 0) Then Exit'error P2_MIL_Set_LED(mod_adr,1100b)'set both bus A LEDs ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 360 Message_Read, P2_MIL_SMT_Set_All_Filters, P2_MIL_SMT_Set_Filter, MIL_Set_LED Gültig für MIL-1553 Rev. E Beispiel #Include ADwinPro_All.Inc #Define mod_adr Init: Rem initialize MIL controller Par_1 = P2_MIL_Reset(mod_adr) (Par_1 <> 0) Then Exit'error Rem set register 1000h P2_MIL_Set_Register(mod_adr, 1000h, 3) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 361 Message_Read, P2_MIL_SMT_Set_All_Filters, P2_MIL_SMT_Set_Filter, MIL_Set_LED Gültig für MIL-1553 Rev. E Beispiel #Include ADwinPro_All.Inc #Define mod_adr Init: Rem initialize MIL controller Par_1 = P2_MIL_Reset(mod_adr) (Par_1 <> 0) Then Exit'error Rem read register 1000h Par_10 = P2_MIL_Get_Register(mod_adr, 1000h) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 362: Pro Ii: Arinc-429

    – P2_ARINC_Transmit_Enable (Seite 367) – P2_ARINC_Receive_Fifo_Empty (Seite 368) – P2_ARINC_Read_Receive_Fifo (Seite 369) – ARINC_Split_Value32 (Seite 370) – P2_ARINC_Set_Labels (Seite 371) Die Befehlsübersicht nach Modulen (Anhang A.2) zeigt, welche Befehle für einen Modultyp anwendbar sind. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 363 Bei einem Master-Reset werden das Senden und Empfangen von Daten sofort beendet, die Sende- und Empfangs-Fifos sowie die Fifo-Flags gelöscht. Siehe auch P2_ARINC_Config_Transmit, P2_ARINC_Config_Receive, P2_ARINC_Write_ Transmit_Fifo, ARINC_Create_Value32, P2_ARINC_Transmit_Enable, ARINC_Transmit_Fifo_Full, P2_ARINC_Read_Receive_Fifo, P2_ARINC_Set_ Labels Gültig für ARINC-429 Rev. E Beispiel siehe P2_ARINC_Config_Transmit oder P2_ARINC_Config_Receive ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 364 'increase number to be sent (number > 07FFFFh) Then number Rem create value to be sent (with SSM=11b and SDI=01b) value = ARINC_Create_Value32(arinc_label, 11b, 01b, number) Rem Write value to transmitter fifo P2_ARINC_Write_Transmit_Fifo(mod_adr, value) EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 365 Receiver die Nachricht. Beachten Sie, dass die Paritätsprüfung bei den Receivern des Moduls immer aktiv ist; sie kann nicht gesperrt werden. Siehe auch P2_ARINC_Reset, P2_ARINC_Config_Transmit, P2_ARINC_Read_Receive_ Fifo, P2_ARINC_Set_Labels Gültig für ARINC-429 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 366 (P2_ARINC_Receive_Fifo_Empty(mod_adr, 2) = 0) Then Rem Read value from receiver fifo 1 into Par_20 Par_20 = P2_ARINC_Read_Receive_Fifo(mod_adr, 2) Rem split value into label, ssm, sdi, data, and parity ARINC_Split_Value32(Par_20, Par_21, Par_22, Par_23, Par_24, Par_25) EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 367 Verwenden Sie P2_ARINC_Transmit_Fifo_Full, um auf freie Plätze im Sende-Fifo zu prüfen, bevor Sie neue Nachrichten mit P2_ARINC_Write_ schreiben. Transmit_Fifo Siehe auch P2_ARINC_Config_Transmit, P2_ARINC_Transmit_Fifo_Empty, P2_ARINC_ Write_Transmit_Fifo, ARINC_Create_Value32, P2_ARINC_Transmit_Enable Gültig für ARINC-429 Rev. E Beispiel siehe P2_ARINC_Config_Transmit ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 368 Der Sende-Fifo kann bis zu 32 Nachrichten aufnehmen. prüfen Sie, ob alle Daten aus dem P2_ARINC_Transmit_Fifo_Empty Sende-Fifo versendet wurden. Siehe auch P2_ARINC_Config_Transmit, P2_ARINC_Transmit_Fifo_Full, P2_ARINC_ Write_Transmit_Fifo, ARINC_Create_Value32, P2_ARINC_Transmit_Enable Gültig für ARINC-429 Rev. E Beispiel siehe P2_ARINC_Config_Transmit ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 369 Sobald der Transmitter freigegeben ist, werden alle Werte im Sende-Fifo so schnell wie möglich über den ARINC-Bus gesendet. Siehe auch P2_ARINC_Config_Transmit, P2_ARINC_Transmit_Fifo_Full, P2_ARINC_ Transmit_Fifo_Empty, P2_ARINC_Transmit_Enable, ARINC_Create_Value32, P2_ARINC_Read_Receive_Fifo Gültig für ARINC-429 Rev. E Beispiel siehe P2_ARINC_Config_Transmit ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 370 (nur wenn die Paritätsprüfung aktiviert ist, sie- he P2_ARINC_Config_Transmit). Um einen Wert in seine Komponenten aufzuteilen, verwenden Sie ARINC_ Split_Value32. Siehe auch P2_ARINC_Reset, P2_ARINC_Config_Transmit, P2_ARINC_Transmit_Fifo_ Full, P2_ARINC_Transmit_Fifo_Empty, P2_ARINC_Write_Transmit_Fifo, ARINC_Split_Value32 Gültig für ARINC-429 Rev. E Beispiel siehe P2_ARINC_Config_Transmit ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 371 Wenn Senden aktiviert ist, werden die Daten aus dem Sende-Fifo so schnell wie möglich über den ARINC-Bus verschickt. Siehe auch P2_ARINC_Reset, P2_ARINC_Config_Transmit, P2_ARINC_Transmit_Fifo_ Full, P2_ARINC_Transmit_Fifo_Empty, P2_ARINC_Write_Transmit_Fifo Gültig für ARINC-429 Rev. E Beispiel siehe P2_ARINC_Config_Transmit ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 372 1: Empfangs-Fifo ist leer. Bemerkungen Verwenden Sie P2_ARINC_Receive_Fifo_Empty, um auf Daten im Emp- fangs-Fifo zu prüfen, bevor Sie neue Nachrichten lesen. Siehe auch P2_ARINC_Config_Receive, P2_ARINC_Transmit_Fifo_Empty, P2_ARINC_ Read_Receive_Fifo, P2_ARINC_Set_Labels Gültig für ARINC-429 Rev. E Beispiel siehe P2_ARINC_Config_Receive ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 373 Wenn Sie die Bits von selbst auswerten wollen, ret_val beachten Sie die folgende Bitreihenfolge: … 7…0 Daten Label Siehe auch P2_ARINC_Config_Receive, P2_ARINC_Write_Transmit_Fifo, P2_ARINC_ Receive_Fifo_Empty, ARINC_Split_Value32, P2_ARINC_Set_Labels Gültig für ARINC-429 Rev. E Beispiel siehe P2_ARINC_Config_Receive ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 374 Paritätsprüfung kann nicht gesperrt werden. Um einen neuen 32 Bit-Wert zu erzeugen, verwenden Sie ARINC_Create_ Value32. Siehe auch P2_ARINC_Config_Receive, P2_ARINC_Read_Receive_Fifo, P2_ARINC_ Receive_Fifo_Empty, P2_ARINC_Set_Labels, ARINC_Create_Value32 Gültig für ARINC-429 Rev. E Beispiel siehe P2_ARINC_Config_Receive ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 375 1 und 2 in labels[], und wiederholen das Label 2 (oder auch Label 1) im Feld 14mal, um auf 16 Werte aufzufüllen. Siehe auch P2_ARINC_Reset, P2_ARINC_Config_Receive, P2_ARINC_Receive_Fifo_ Empty, P2_ARINC_Read_Receive_Fifo Gültig für ARINC-429 Rev. E Beispiel siehe P2_ARINC_Config_Receive ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 376: Pro Ii: Ethercat-Schnittstelle

    – P2_ECAT_Write_Data_16L (Seite 379) – P2_ECAT_Read_Data_16F (Seite 380) – P2_ECAT_Write_Data_16F (Seite 381) – P2_Init_EtherCAT (Seite 382) – P2_Run_EtherCAT (Seite 384) Die Befehlsübersicht nach Modulen (Anhang A.2) zeigt, welche Befehle für einen Modultyp anwendbar sind. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 377 Die Versionsnummer wird nur benötigt, wenn Sie Fragen zur Programmierung des EtherCAT-Bus an unseren Support haben. Die Versionsnummer (in hexadezimaler Schreibweise) ist fünfstellig, beispiels- weise 10000h; die erste Stelle ist die Hauptrevisionsnummer. Siehe auch P2_ECAT_Init Gültig für EtherCAT-SL Rev. E Beispiel siehe P2_ECAT_Init ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 378 2: Betriebszustand PreOp. 3: Betriebszustand Boot. 4: Betriebszustand SafeOp. 8: Betriebszustand Op. Bemerkungen Der Betriebszustand Boot wird in ADbasic nicht unterstützt. Siehe auch P2_ECAT_Init, P2_ECAT_Read_Data_16L, P2_ECAT_Write_Data_16L Gültig für EtherCAT-SL Rev. E Beispiel siehe P2_ECAT_Init ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 379 PC nach einer bestimmten Zeit (time-out) die Kommunikation unterbre- chen. Wir empfehlen außerdem, mit den Datenübertra- P2_ECAT_Set_Mode gungs-Modus des EtherCAT-Slave einzustellen (ab Firmware-Version 2.0). Siehe auch P2_ECAT_Get_Version, P2_ECAT_Get_State, P2_ECAT_Read_Data_16L, P2_ECAT_Write_Data_16L Gültig für EtherCAT-SL Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 380 'operational mode = P2_ECAT_Write_Data_16L(ecat_comtable, ecat_outputs) (ret = 0) Then 'writing data was o.k. Par_11 'increase write counter EndIf = P2_ECAT_Read_Data_16L(ecat_comtable, ecat_inputs) (ret = 0) Then 'reading data was o.k. Par_12 'increase read counter EndIf EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 381 =2 arbeitet das Modul mit der halben Datenübertragungsgeschwindig- mode keit, aber es werden dabei sowohl Long- als auch Float-Daten übertragen. Siehe auch P2_ECAT_Read_Data_16L, P2_ECAT_Write_Data_16L, P2_ECAT_Read_ Data_16F, P2_ECAT_Write_Data_16F, P2_ECAT_Get_Version Gültig für EtherCAT-SL Rev. E Beispiel siehe P2_ECAT_Init ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 382 _ inputs[] LONG Lese-Status: ret_val LONG 0: Lesen war erfolgreich. ≠0: Fehler beim Lesen der Daten. Bemerkungen - / - Siehe auch P2_ECAT_Get_State, P2_ECAT_Init, P2_ECAT_Write_Data_16L Gültig für EtherCAT-SL Rev. E Beispiel siehe P2_ECAT_Init ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 383 EtherCAT-Bus schreibt. outputs[] LONG Schreib-Status: ret_val LONG 0: Schreiben war erfolgreich. ≠0: Fehler beim Schreiben der Daten. Bemerkungen - / - Siehe auch P2_ECAT_Get_State, P2_ECAT_Init, P2_ECAT_Read_Data_16L Gültig für EtherCAT-SL Rev. E Beispiel siehe P2_ECAT_Init ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 384 LONG 0: Lesen war erfolgreich. ≠0: Fehler beim Lesen der Daten. Bemerkungen Die Funktion ist verfügbar seit der Firmware-Version 2.0. Siehe auch P2_ECAT_Get_State, P2_ECAT_Init, P2_ECAT_Write_Data_16F Gültig für EtherCAT-SL Rev. E Beispiel siehe P2_ECAT_Init ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 385 LONG 0: Schreiben war erfolgreich. ≠0: Fehler beim Schreiben der Daten. Bemerkungen Die Funktion ist verfügbar seit der Firmware-Version 2.0. Siehe auch P2_ECAT_Get_State, P2_ECAT_Init, P2_ECAT_Read_Data_16F Gültig für EtherCAT-SL Rev. E Beispiel siehe P2_ECAT_Init ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 386 Die Größe der Datenbereiche muss die gleiche sein wie bei der Projektierung des EtherCAT. Achten Sie darauf, dass die Größe der Datenbereiche bei der Projektierung auch in anderen Einheiten als Doppelworten angegeben werden kann. Siehe auch P2_Run_EtherCAT Gültig für EtherCAT-SL-40 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 387 = (out_arr[i] + i) Next Rem send and read data state = P2_Run_EtherCAT(module,out_arr,in_arr,92,conf_arr) Par_2 state Rem now process received data stored in in_arr[1..76]; Rem in_arr[77..92] has been filled with unusable data, Rem in_arr[93..1000] remains unused here. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 388 • für Long AB_DATA_TYPE_SINT32 • für Float32 AB_DATA_TYPE_FLOAT In jedem Feldelement in werden 4 Daten- in_pd_arr[] out_pd_arr[] bytes = 1 Doppelwort gespeichert. Siehe auch P2_Init_EtherCAT Gültig für EtherCAT-SL-40 Rev. E Beispiel siehe P2_Init_EtherCAT ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 389: Pro Ii: Flexray

    – P2_FlexRay_Init (Seite 387) – P2_FlexRay_Read_Word (Seite 388) – P2_FlexRay_Reset (Seite 389) – P2_FlexRay_Set_LED (Seite 390) – P2_FlexRay_Write_Word (Seite 391) Die Befehlsübersicht nach Modulen (Anhang A.2) zeigt, welche Befehle für einen Modultyp anwendbar sind. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 390 Je 4 hexadezimaler Ziffern stehen für die Versionsnummern des High-Level- und des Low-Level-Treibers. Beispielsweise steht für die Versio- 01030205h nen 1.3 (high level) und 2.5 (low level). Siehe auch P2_FlexRay_Init Gültig für FlexRay-2 Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 391 Rem read address 220h from controller 1 value = P2_FlexRay_Read_Word(fr_datatable,1,220h,status) Else Rem write value to address 192h of controller 1 P2_FlexRay_Write_Word(fr_datatable,1,192h,value,status) EndIf Finish: (status <> 0) Then Rem set Par_1 to error number Par_1 status EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 392 2: Fehler: FlexRay-Controller hat nicht rechtzeitig rea- giert. Inhalt (16 Bit-Wert) der Adresse im FlexRay-Controller. LONG ret_val Bemerkungen - / - Siehe auch P2_FlexRay_Init, P2_FlexRay_Reset, P2_FlexRay_Write_Word Gültig für FlexRay-2 Rev. E Beispiel siehe P2_FlexRay_Init ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 393 0: Zugriff war erfolgreich. 1: Fehler: FlexRay-Controller war beschäftigt. 2: Fehler: FlexRay-Controller hat nicht rechtzeitig rea- giert. Bemerkungen - / - Siehe auch P2_FlexRay_Init, P2_FlexRay_Read_Word, P2_FlexRay_Write_Word Gültig für FlexRay-2 Rev. E Beispiel siehe P2_FlexRay_Init ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 394 - / - Siehe auch P2_FlexRay_Init Gültig für FlexRay-2 Rev. E Beispiel #Include ADwinPro_All.inc fr_datatable[150] As Long status As Long Init: Rem FlexRay-Controller initialisieren P2_FlexRay_Init(1, fr_datatable, status) Rem LED für Kanal 2, Controller 1 einschalten P2_FlexRay_Set_LED(fr_datatable,1,2,1,status) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 395 0: Zugriff war erfolgreich. 1: Fehler: FlexRay-Controller war beschäftigt. 2: Fehler: FlexRay-Controller hat nicht rechtzeitig rea- giert. Bemerkungen - / - Siehe auch P2_FlexRay_Init, P2_FlexRay_Read_Word, P2_FlexRay_Reset Gültig für FlexRay-2 Rev. E Beispiel siehe P2_FlexRay_Init ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 396: Pro Ii: Sent-Schnittstelle

    ADwin Pro II: SENT-Schnittstelle 3.20 Pro II: SENT-Schnittstelle Dieser Abschnitt enthält Befehle für SENT-Schnittstellen auf ADwin-Pro II. – P2_SENT_Init (Seite 393) – P2_SENT_Get_Msg_Counter (Seite 395) – P2_SENT_Command_Ready (Seite 396) – P2_SENT_Get_Version (Seite 394) SENT-Eingänge – P2_SENT_Get_ChannelState (Seite 397) – P2_SENT_Get_ClockTick (Seite 398) –...
  • Seite 397 Bei der Initialisierung muss für jedes SENT-Modul ein Feld sent_data- mit 150 Elementen angelegt werden. table[] Siehe auch P2_SENT_Get_Serial_Message_Array, P2_SENT_Set_Serial_Message_Pat- tern, P2_SENT_Get_Latch_Data Gültig für SENT-4 Rev. E, SENT-4-Out Rev. E, SENT-6 Rev. E Beispiel siehe P2_SENT_Get_Latch_Data ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 398 SENT-Kanäle an unseren Support haben. Siehe auch P2_SENT_Get_Fast_Channel1, P2_SENT_Get_Fast_Channel2, P2_SENT_ Get_Fast_Channel_CRC_OK, P2_SENT_Get_ChannelState, P2_SENT_Get_ ClockTick Gültig für SENT-4 Rev. E, SENT-4-Out Rev. E, SENT-6 Rev. E Beispiel #Include ADwinPro_All.inc #Define module Init: REM get software version Par_1 = P2_SENT_Get_Version(module) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 399 SENT-Sensor aktiv. Die kontinuierliche Änderung des Rückgabewerts dient daher als Timeout-Wächter für den SENT-Sensor. Siehe auch P2_SENT_Get_ChannelState, P2_SENT_Get_ClockTick, P2_SENT_Get_ PulseCount, P2_SENT_Set_Output_Mode Gültig für SENT-4 Rev. E, SENT-4-Out Rev. E, SENT-6 Rev. E Beispiel siehe P2_SENT_Get_Fast_Channel1 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 400 Gültig für SENT-4 Rev. E, SENT-4-Out Rev. E, SENT-6 Rev. E Beispiel #Include ADwinPro_All.inc #Define module #Define channel Init: Rem set CRC mode to 'recommended' Until (P2_SENT_Command_Ready(module) = 0) Par_1 = P2_SENT_Set_CRC_Implementation(module, channel, 1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 401 Pulsanzahl einer Nachricht erkannt hat, schaltet es den Ein- gangskanal in den Lesemodus. Siehe auch P2_SENT_Get_Fast_Channel1, P2_SENT_Get_Fast_Channel2, P2_SENT_ Get_Fast_Channel_CRC_OK, P2_SENT_Get_PulseCount, P2_SENT_Get_ ClockTick Gültig für SENT-4 Rev. E, SENT-6 Rev. E Beispiel siehe P2_SENT_Get_Fast_Channel1 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 402 SENT-Nachricht automatisch erkannt (Erkennungsmodus). Alternativ können Sie den Basistakt mit manuell festlegen. P2_SENT_Set_ClockTick Siehe auch P2_SENT_Set_ClockTick, P2_SENT_Command_Ready, P2_SENT_Get_ Fast_Channel1, P2_SENT_Get_Fast_Channel2, P2_SENT_Get_Fast_ Channel_CRC_OK, P2_SENT_Get_ChannelState, P2_SENT_Get_Pulse- Count Gültig für SENT-4 Rev. E, SENT-6 Rev. E Beispiel siehe P2_SENT_Get_Fast_Channel1 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 403: Pulsecount

    3 Nibble-Pulse: zweiter 12 Bit-Wert (fast channel 2) • 1 Nibble-Puls: Prüfsumme • Pausenpuls (optional) Siehe auch P2_SENT_Set_PulseCount, P2_SENT_Get_Fast_Channel1, P2_SENT_Get_ Fast_Channel2, P2_SENT_Get_Fast_Channel_CRC_OK, P2_SENT_Get_ ChannelState, P2_SENT_Get_ClockTick Gültig für SENT-4 Rev. E, SENT-6 Rev. E Beispiel siehe P2_SENT_Get_Fast_Channel1 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 404 Wert mit der CRC-Prüfsumme in der SENT-Nach- richt. Nur wenn beide Prüfsummen gleich sind, ist der Rückgabewert gleich 0. Siehe auch P2_SENT_Get_Fast_Channel1, P2_SENT_Get_Fast_Channel2, P2_SENT_ Get_Serial_Message_CRC_OK, P2_SENT_Get_Serial_Message_Id Gültig für SENT-4 Rev. E, SENT-6 Rev. E Beispiel siehe P2_SENT_Get_Fast_Channel1 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 405 = P2_SENT_Set_CRC_Implementation(module, channel, 1) Rem read pulse count: 9 = without pause pulse, Rem 10 = with pause pulse Par_11 P2_SENT_Get_PulseCount(module, channel) Par_12 P2_SENT_Get_ClockTick(module, channel) Event: Par_2 (Par_2 = 1000) Then 'timeout check every second Par_2 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 406 = P2_SENT_Command_Ready(module) ((ready_state = 0) (status <> Then (status = 1) Then 'reset channel value1 returncode P2_SENT_Set_Detection(module, value1) EndIf (status = 2) Then 'set clock period value1 returncode P2_SENT_Set_ClockTick(module, value1, value2) EndIf status EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 407 In einer SENT-Nachricht sind zwei 12 Bit-Werte enthalten; sie werden auch als „fast channel signals“ bezeichnet. Der Befehl gibt den zweiten der beiden Werte zurück. Siehe auch P2_SENT_Get_Fast_Channel1, P2_SENT_Get_Fast_Channel_CRC_OK, P2_SENT_Get_Serial_Message_CRC_OK, P2_SENT_Get_Serial_Message_ Gültig für SENT-4 Rev. E, SENT-6 Rev. E Beispiel siehe P2_SENT_Get_Fast_Channel1 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 408 Enhanced Serial Message Format, 20 Bit Länge: Kennung und Datenwert 4 Bit/16 Bit oder 8 Bit/12 Bit. Siehe auch P2_SENT_Get_Serial_Message_Id, P2_SENT_Get_Serial_Message_Data, P2_SENT_Get_Fast_Channel1, P2_SENT_Get_Fast_Channel2, P2_SENT_ Get_Fast_Channel_CRC_OK Gültig für SENT-4 Rev. E, SENT-6 Rev. E Beispiel siehe P2_SENT_Get_Fast_Channel1 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 409 Enhanced Serial Message Format, 20 Bit Länge: Kennung und Datenwert 4 Bit/16 Bit oder 8 Bit/12 Bit. Siehe auch P2_SENT_Get_Serial_Message_CRC_OK, P2_SENT_Get_Serial_Message_ Data, P2_SENT_Get_Fast_Channel1, P2_SENT_Get_Fast_Channel2, SENT_Get_Fast_Channel_CRC_OK Gültig für SENT-4 Rev. E, SENT-6 Rev. E Beispiel siehe P2_SENT_Get_Fast_Channel1 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 410 Kennung und Datenwert 4 Bit/16 Bit oder 8 Bit/12 Bit. Einen vollständigen Nachrichtensatz von seriellen Nachrichten erhalten Sie mit P2_SENT_Get_Serial_Message_Array. Siehe auch P2_SENT_Get_Serial_Message_CRC_OK, P2_SENT_Get_Serial_Message_ Id, P2_SENT_Get_Fast_Channel1, P2_SENT_Get_Fast_Channel2, SENT_Get_Fast_Channel_CRC_OK Gültig für SENT-4 Rev. E, SENT-6 Rev. E Beispiel siehe P2_SENT_Get_Fast_Channel1 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 411 Short Serial Message Format, 12 Bit Länge: Kennung 4 Bit und Datenwert 8 Bit. • Enhanced Serial Message Format, 20 Bit Länge: Kennung und Datenwert 4 Bit/16 Bit oder 8 Bit/12 Bit. Siehe auch ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 412 REM get set of serial messages P2_SENT_Get_Serial_Message_Array(senttable, channel, array, 1) REM get list of used IDs REM if count > 0, the ID is used (array[i] > 0) Then Inc j REM store ID id_array[j] = EndIf Next ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 413 Die Abfrage einzelner serieller Nachrichten, z.B. mit P2_SENT_Get_Serial_ Message_Data, wird durch das Zurücksetzen nicht beeinflusst. Siehe auch P2_SENT_Command_Ready, P2_SENT_Get_PulseCount, P2_SENT_Get_ Fast_Channel1, P2_SENT_Get_Fast_Channel2, P2_SENT_Get_Fast_ Channel_CRC_OK, P2_SENT_Get_ChannelState, P2_SENT_Get_ClockTick, P2_SENT_Get_Serial_Message_Array Gültig für SENT-4 Rev. E, SENT-6 Rev. E Beispiel siehe P2_SENT_Get_Serial_Message_Array ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 414 Nach dem Einschalten ist der Berechnungsalgorithmus „Legacy“ eingestellt. Der Berechnungsalgorithmus gilt sowohl für Signale (fast channels) als auch für serielle Nachrichten. Siehe auch P2_SENT_Set_ClockTick, P2_SENT_Get_ChannelState P2_SENT_ Command_Ready Gültig für SENT-4 Rev. E, SENT-6 Rev. E Beispiel siehe P2_SENT_Get_Fast_Channel1 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 415 Eingangskanal in den Lesemodus. Alternativ können Sie mit P2_SENT_Set_ClockTick P2_SENT_Set_ Basistakt und Pulsanzahl auch manuell festlegen. PulseCount Siehe auch P2_SENT_Set_ClockTick, P2_SENT_Get_ChannelState P2_SENT_ Command_Ready Gültig für SENT-4 Rev. E, SENT-6 Rev. E Beispiel siehe P2_SENT_Get_Fast_Channel1 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 416 Alternativ kann das Modul den Basistakt der SENT-Nachricht im Erkennungs- modus automatisch selbst erkennen, siehe P2_SENT_Set_Detection. Siehe auch P2_SENT_Get_ClockTick, P2_SENT_Set_Detection, P2_SENT_Get_Chan- nelState, P2_SENT_Command_Ready Gültig für SENT-4 Rev. E, SENT-6 Rev. E Beispiel siehe P2_SENT_Get_Fast_Channel1 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 417 Alternativ kann das Modul im Erkennungsmodus automatisch erkennen, ob die SENT-Nachricht einen Pausenpuls enthält, siehe P2_SENT_Set_Detection. Siehe auch P2_SENT_Command_Ready, P2_SENT_Get_PulseCount, P2_SENT_Get_ Fast_Channel1, P2_SENT_Get_Fast_Channel2, P2_SENT_Get_Fast_ Channel_CRC_OK, P2_SENT_Get_ChannelState, P2_SENT_Get_ClockTick Gültig für SENT-4 Rev. E, SENT-6 Rev. E Beispiel siehe P2_SENT_Get_Fast_Channel1 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 418 Wenn die empfangenen SENT-Daten nicht zum erwarteten Sensortyp passen, werden Fehlercodes gesetzt. Die Fehlercodes erhalten Sie mit P2_SENT_Get_ Latch_Data. Siehe auch P2_SENT_Command_Ready, P2_SENT_Get_Latch_Data, P2_SENT_Get_ PulseCount, P2_SENT_Get_Fast_Channel1, P2_SENT_Get_Fast_Channel2, P2_SENT_Get_Fast_Channel_CRC_OK, P2_SENT_Get_ChannelState, SENT_Get_ClockTick Gültig für SENT-4 Rev. E, SENT-6 Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 419 Das Puffern über den Latch-Zwischenspeicher hat keinen Einfluss auf das Le- sen von Einzelinformationen wie mit oder P2_SENT_Get_Fast_Channel1 P2_SENT_Get_Serial_Message_Data. Siehe auch P2_SENT_Init, P2_SENT_Check_Latch, P2_SENT_Get_Latch_Data Gültig für SENT-4 Rev. E, SENT-6 Rev. E Beispiel siehe P2_SENT_Get_Latch_Data ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 420 SENT-Kanäle sinnvoll einsetzbar, bei P2_SENT_Check_Latch denen Sie das Puffern im Zwischenspeicher mit angefor- P2_Request_Latch dert haben. Siehe auch P2_SENT_Init, P2_SENT_Request_Latch, P2_SENT_Get_Latch_Data Gültig für SENT-4 Rev. E, SENT-6 Rev. E Beispiel siehe P2_SENT_Get_Latch_Data ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 421 Kennung 4 Bit, Datenwert 8 Bit. 2: Enhanced Serial Message Format, 20 Bit Länge: Kennung 4 Bit, Datenwert 16 Bit 3: Enhanced Serial Message Format, 20 Bit Länge: Kennung 8 Bit, Datenwert 12 Bit ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 422 Pausenpuls und Sync-Puls die glei- che Länge haben. Falsche Pulsanzahl zwischen zwei Sync-Pulsen. Rolling count fail Inverted nibble fail serial message fail 31:10 reserviert Siehe auch P2_SENT_Init, P2_SENT_Check_Latch, P2_SENT_Check_Latch Gültig für SENT-4 Rev. E, SENT-6 Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 423 EndIf Rem check for lost messages msg_no sent_data[1] ((msg_no - msg_no_old) <> 1) Then lost_msg msg_no_old msg_no 'store for next check Rem check for CRC errors (index 6) (sent_data[6] <> 0) Then error_count EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 424 Wenn der FIFO leer läuft, stoppt die Ausgabe und der SENT-Kanal wird automatisch deaktiviert. Siehe auch P2_SENT_Init, P2_SENT_Enable_Channel, P2_SENT_Set_Fast_Channel1, P2_SENT_Set_Fast_Channel2, P2_SENT_Set_Serial_Message_Pattern, SENT_Set_Reserved_Bits, P2_SENT_Set_Fifo Gültig für SENT-4-Out Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 425 Der Berechnungsalgorithmus für die CRC-Prüfsumme gilt sowohl für Signale (fast channels) als auch für serielle Nachrichten. Siehe auch P2_SENT_Init, P2_SENT_Command_Ready, P2_SENT_Enable_Channel, P2_SENT_Set_Fast_Channel1, P2_SENT_Set_Fast_Channel2, P2_SENT_ Set_Fifo Gültig für SENT-4-Out Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 426 Prüfen Sie erst mit P2_SENT_Command_Ready, ob die SENT-Schnittstelle be- reit ist zum Verarbeiten des nächsten Befehls, bevor Sie P2_SENT_Config_ verwenden. Serial_Messages Siehe auch P2_SENT_Init, P2_SENT_Command_Ready, P2_SENT_Set_Serial_ Message_Pattern, P2_SENT_Set_Serial_Message_Data Gültig für SENT-4-Out Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 427 FIFO leer läuft. Achten Sie daher darauf, nach dem Freigeben des SENT-Kanals schnell genug neue Daten in den FIFO zu schreiben. Siehe auch P2_SENT_Init, P2_SENT_Config_Output, P2_SENT_Invert_Channel, SENT_Set_Serial_Message_Pattern Gültig für SENT-4-Out Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 428 Wenn ein SENT-Kanal gesperrt ist, wird im Normalzustand Pegel Low ausge- geben, invertiert aber Pegel High. Umschalten mit erlaubt auch bei gesperrtem P2_SENT_Invert_Channel SENT-Kanal das Ausgeben von wechselnden Pegeln. Siehe auch P2_SENT_Init, P2_SENT_Config_Output, P2_SENT_Enable_Channel Gültig für SENT-4-Out Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 429 P2_SENT_Set_Output_Mode. Im Status-Nibble sind die Bits 0 und 1 für spezielle Anwendungen reserviert. Siehe auch P2_SENT_Init, P2_SENT_Enable_Channel, P2_SENT_Config_Output, SENT_Config_Serial_Messages, P2_SENT_Set_Serial_Message_Pattern, P2_SENT_Set_Serial_Message_Data, P2_SENT_Set_Fast_Channel1, SENT_Set_Fast_Channel2 Gültig für SENT-4-Out Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 430 „fast channel signals“ bezeichnet. Der Befehl setzt den ersten der beiden Werte. Die CRC-Prüfsumme wird automatisch berechnet (Berechnungsalgorithmus siehe P2_SENT_Config_Output) und in der SENT-Nachricht gesetzt. Siehe auch P2_SENT_Init, P2_SENT_Enable_Channel, P2_SENT_Config_Output, SENT_Config_Serial_Messages, P2_SENT_Set_Serial_Message_Pattern, P2_SENT_Set_Serial_Message_Data, P2_SENT_Set_Fast_Channel2, SENT_Set_Reserved_Bits Gültig für SENT-4-Out Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 431 „fast channel signals“ bezeichnet. Der Befehl setzt den zweiten der beiden Wer- Die CRC-Prüfsumme wird automatisch berechnet (Berechnungsalgorithmus siehe P2_SENT_Config_Output) und in der SENT-Nachricht gesetzt. Siehe auch P2_SENT_Init, P2_SENT_Enable_Channel, P2_SENT_Config_Output, SENT_Config_Serial_Messages, P2_SENT_Set_Serial_Message_Pattern, P2_SENT_Set_Serial_Message_Data, P2_SENT_Set_Fast_Channel1, SENT_Set_Reserved_Bits Gültig für SENT-4-Out Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 432 Message_Data Nachrichtensatz neu definieren. Die zugehörige CRC-Prüfsumme wird automatisch berechnet und übertragen. Siehe auch P2_SENT_Init, P2_SENT_Command_Ready, P2_SENT_Enable_Channel, P2_SENT_Config_Output, P2_SENT_Config_Serial_Messages, P2_SENT_ Set_Serial_Message_Data, P2_SENT_Set_Fast_Channel1, P2_SENT_Set_ Fast_Channel2, P2_SENT_Set_Reserved_Bits Gültig für SENT-4-Out Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 433 Sie können nur Datenwerte ändern, nicht aber die eingestellten Kennungen. Die zugehörige CRC-Prüfsumme wird automatisch berechnet und übertragen. Siehe auch P2_SENT_Init, P2_SENT_Command_Ready, P2_SENT_Config_Output, SENT_Config_Serial_Messages, P2_SENT_Set_Serial_Message_Pattern, P2_SENT_Set_Fast_Channel1, P2_SENT_Set_Fast_Channel2, P2_SENT_ Set_Reserved_Bits Gültig für SENT-4-Out Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 434 LONG gabe-FIFO des SENT-Kanals. Bemerkungen Der Befehl ist nur sinnvoll einsetzbar, wenn das Modul im FIFO-Modus arbeitet, siehe P2_SENT_Set_Output_Mode. Siehe auch P2_SENT_Init, P2_SENT_Set_Output_Mode, P2_SENT_Fifo_Clear, SENT_Set_Fifo Gültig für SENT-4-Out Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 435 Prüfen Sie erst mit P2_SENT_Command_Ready, ob die SENT-Schnittstelle be- reit ist zum Verarbeiten des nächsten Befehls, bevor Sie P2_SENT_Fifo_ verwenden. Clear Siehe auch P2_SENT_Init, P2_SENT_Command_Ready, P2_SENT_Set_Output_Mode, P2_SENT_Fifo_Empty, P2_SENT_Set_Fifo Gültig für SENT-4-Out Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 436 Achten Sie daher darauf, nach dem Freigeben des SENT-Kanals regel- mäßig und schnell genug neue Daten in den FIFO zu schreiben. Siehe auch P2_SENT_Init, P2_SENT_Command_Ready, P2_SENT_Set_Output_Mode, P2_SENT_Fifo_Empty, P2_SENT_Fifo_Clear Gültig für SENT-4-Out Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 437: Pro Ii: Spi-Schnittstelle

    P2_SPI_Slave_InFifo_Full (Seite 454) – P2_SPI_Slave_InFifo_Read (Seite 455) – P2_SPI_Slave_Clear_Fifo (Seite 457) Für das Modul SPI-2-T Rev. E sind weitere Befehle verfügbar. Die Befehlsübersicht nach Modulen (Anhang A.2) zeigt, welche Befehle für einen Modultyp anwendbar sind. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 438 Es ist möglich, im laufenden Betrieb den Betriebsmodus umzuschalten. Siehe auch P2_SPI_Config, P2_SPI_Master_Config, P2_SPI_Master_Set_Clk_Wait, SPI_Slave_Config, P2_DigProg, P2_DigProg_Bits Gültig für SPI-2-D Rev. E, SPI-2-T Rev. E Beispiel #Include ADwinPro_All.inc Rem Betriebsmodus auf 2 SPI-Slave-Schnittstellen einstellen P2_SPI_Mode(1, 2) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 439 DATAOUT. Beachten Sie, dass ADbasic-Variablen eine Bitlänge von 32 Bit ha- ben, daher müssen SPI-Nachrichten mit 33…64 Bit Länge auf 2 Variablen auf- geteilt gespeichert werden. Siehe auch P2_SPI_Mode, P2_SPI_Master_Config, P2_SPI_Master_Set_Clk_Wait, SPI_Slave_Config, P2_SPI_Master_Start, P2_SPI_Master_Status Gültig für SPI-2-D Rev. E, SPI-2-T Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 440: Mosi-Ausgabe Bei Fallender Flanke Von Sclk

    Rem CPOL = 1, CPHA = 0; Nachrichtenlänge 8 Bit Rem MSB zuerst; Slave-Select aktiv bei High P2_SPI_Config(module, 1, 2, 8, 0, 0) Rem Taktfrequenz 1 MHz etc. einstellen P2_SPI_Master_Config(module, 1, 250, 75, 1, 0) MOSI-Ausgabe bei fallender Flanke von SCLK ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 441: Verzögertes Einlesen

    MOSI-Signal eingelesen. Somit lassen sich Signallaufzei- delay ten kompensieren, die z.B. durch Signalkonditionierung entstehen. Die eingestellte Verzögerungszeit bleibt solange bestehen, bis eine neue ge- setzt wird. Mit dem Wert 0 wird die Verzögerungszeit deaktiviert. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 442 Die eingestellte Verlängerung bleibt solange bestehen, bis eine neue konfigu- riert wird. Beispiel:f_SPI = 100 kHz, = 250 ss_time T = 0,5 / 100 kHz + 250 x 20ns = 5µs + 5µs = 10µs ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 443 P2_SPI_Master_Set_Value32(mod_no, master_no, 99h) Event: Rem Slave-Select via DIO25 aktivieren, Übertragung starten P2_Digout(mod_no, 25, 0) P2_SPI_Master_Start(mod_no, master_no) Rem 200µs warten; Rem Signaldauer T=16Bits*10µs=160µs + Wartezeit P2_Sleep(20000) Rem Slave-Select-Leitung DIO25 des Masters deaktivieren P2_Digout(mod_no, 25, 1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 444 ADwin Pro II: SPI-Schnittstelle P2_SPI_Master_Config Slave-Select (Linie 4) ist für 200µs aktiv ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 445 Rem CPOL = 0, CPHA = 0; Nachrichtenlänge 16 Bit P2_SPI_Config(mod_no, master_no, 0, 16, 0, 0) Rem Taktfrequenz 1 MHz etc. einstellen P2_SPI_Master_Config(mod_no, master_no, 250, 75, 1, 0) Event: Rem SPI-Nachricht zur Ausgabe bereitstellen und Rem Datenübertragung starten P2_SPI_Master_Set_Value32(mod_no, master_no, 12345678h) P2_SPI_Master_Start(mod_no, master_no) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 446 P2_SPI_Config(mod_no, master_no, 0, 64, 0, 0) Rem Taktfrequenz 1 MHz etc. einstellen P2_SPI_Master_Config(mod_no, master_no, 250, 75, 1, 0) Event: Rem SPI-Nachricht 64 Bit zur Ausgabe bereitstellen P2_SPI_Master_Set_Value64(mod_no, master_no, 0F678h, 5678h) Rem Datenübertragung starten P2_SPI_Master_Start(mod_no, master_no) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 447 Rem Slave-Select-Signal um 5µs auf 10µs verlängern Rem Slave-Select-Leitung automatisch aktivieren P2_SPI_Master_Config(mod_no, master_no, 250, 75, 1, 0) Event: Rem SPI-Nachricht zur Ausgabe bereitstellen P2_SPI_Master_Set_Value64(mod_no, master_no, 0F678h, 5678h) Rem Slave-Select-Ausgang SS out automatisch aktivieren und Rem Datenübertragung starten P2_SPI_Master_Start(mod_no, master_no) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 448 P2_SPI_Master_Set_Value64(mod_no, master_no, 0F678h, 5678h) Event: Rem Slave-Select-Ausgang SS out automatisch aktivieren und Rem Datenübertragung starten P2_SPI_Master_Start(mod_no, master_no) Rem Status des Masters abfragen, bis er nicht mehr aktiv ist Par_80 = P2_SPI_Master_Status(mod_no, master_no) Until(Par_80 <> 1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 449 Par_80 = P2_SPI_Master_Status(mod_no, master_no) Until(Par_80 <> 1) Rem SPI-Nachricht einlesen Rem Par_13 enthält einen 32 Bit-Wert, in dem die Bits 0..18 Rem die SPI-Nachricht enthalten, die Bits 19..31 sind 0. Par_13 = P2_SPI_Master_Get_Value32(mod_no, master_no) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 450 Until(Par_80 <> 1) Rem SPI-Nachricht einlesen Rem Par_12 enthält die unteren 32 Bit, Par_13 die restlichen Rem 16 Bit der SPI-Nachricht; die übrigen 16 Bit in Par_13 Rem sind 0. P2_SPI_Master_Get_Value64(mod_no, master_no, Par_13, Par_12) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 451 Pegel der Da- P2_SPI_Master_Get_Static_Input tenleitung lesen und je nach SPI-Slave darauf entsprechend reagieren. Siehe auch P2_SPI_Mode, P2_SPI_Config, P2_SPI_Master_Config, P2_SPI_Master_Sta- tus, P2_SPI_Master_Get_Value32, P2_SPI_Master_Get_Value64 Gültig für SPI-2-D Rev. E, SPI-2-T Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 452 6 oder clocks mehr Wartezeiten in das Taktsignal eingefügt werden, wird die fünfte Wartezeit aus dem Feld entsprechend oft wiederholt. half_clk_wait Siehe auch P2_SPI_Mode, P2_SPI_Config, P2_SPI_Master_Config, P2_SPI_Slave_Con- Gültig für SPI-2-D Rev. E, SPI-2-T Rev. E ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 453 Rem Wartezeiten nach jeder 4. Periode in das Taktsignal Rem einfügen P2_SPI_Master_Set_Clk_Wait(mod_no,master_no,4,clk_wait_arr) Event: Rem SPI-Nachricht zur Ausgabe bereitstellen P2_SPI_Master_Set_Value64(mod_no, master_no, 0, 0AAh) Rem Datenübertragung starten P2_SPI_Master_Start(mod_no, master_no) Wartezeiten im Taktsignal (gelb) nach jeweils 4 Perioden; hervorgehoben ist Wartezeit 2 mit 2,0µs ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 454 Die Anzahl der empfangenen Bits wird – wenn die Option aktiv ist – jeweils als 32 Bit-Wert vor der zugehörigen SPI-Nachricht im Eingangs-Fifo abgelegt. Siehe auch P2_SPI_Mode, P2_SPI_Config, P2_SPI_Master_Config, P2_SPI_Slave_ OutFifo_Write, P2_SPI_Slave_OutFifo_Empty, P2_SPI_Slave_InFifo_Full, SPI_Slave_InFifo_Read, P2_SPI_Slave_Clear_Fifo Gültig für SPI-2-D Rev. E, SPI-2-T Rev. E Beispiel - / - ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 455 SPI-Nachricht 32 Bit-Werte immer paarweise verwendet werden. In der Regel wird daher nur gerade Werte annehmen count nur ungerade Werte. array_idx • im Feld erst die unteren, dann die oberen 32 Bit einer array[] SPI-Nachricht erwartet werden. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 456 P2_SPI_Config(mod_no, slave_no, 0, 16, 0, 0) P2_SPI_Slave_Config(mod_no, slave_no, 0) Event: Rem wenn Platz im Ausgangs-Fifo vorhanden ist .. (P2_SPI_Slave_OutFifo_Empty(mod_no, slave_no) > 0) Then Rem .. eine SPI-Nachricht zur Ausgabe bereitstellen array[1] = P2_SPI_Slave_OutFifo_Write(mod_no, slave_no, 1, array, 1) EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 457 P2_SPI_Config(mod_no, slave_no, 0, 16, 0, 0) P2_SPI_Slave_Config(mod_no, slave_no, 0) Event: Rem wenn freie Plätze vorhanden sind .. If(P2_SPI_Slave_OutFifo_Empty(mod_no, slave_no)> 0) Then array[1] = Rem .. eine SPI-Nachricht zur Ausgabe bereitstellen P2_SPI_Slave_OutFifo_Write(mod_no, slave_no, 1, array, 1) EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 458 P2_SPI_Config(mod_no, slave_no, 1, 8, 0, 0) P2_SPI_Slave_Config(mod_no, slave_no, 0) index Event: Par_1 = P2_SPI_Slave_InFifo_Full(mod_no, slave_no) (Par_1 > 0) Then Rem eine SPI-Nachricht lesen P2_SPI_Slave_InFifo_Read(mod_no, slave_no, Par_1, array, index) index index Par_1 (index > 100) Then index EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 459 Wort oberes Wort + 15 Nachricht 16 Nachricht 8, SPI-Nach- Bitanzahl 6 array_idx oberes Wort richt 8 + 16 Nachricht 17 Nachricht 9, Bitanzahl 9 Nachricht 6, array_idx unteres Wort unteres Wort ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 460 P2_SPI_Config(mod_no, slave_no, 1, 8, 0, 0) P2_SPI_Slave_Config(mod_no, slave_no, 0) index Event: Par_1 = P2_SPI_Slave_InFifo_Full(mod_no, slave_no) (Par_1 > 0) Then Rem eine SPI-Nachricht lesen P2_SPI_Slave_InFifo_Read(mod_no, slave_no, Par_1, array, index) index index Par_1 (index > 100) Then index EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 461 #Define slave_no Init: P2_SPI_Mode(mod_no, 2) '2 Slave-Schnittstellen Rem CPOL = 0, CPHA = 1; Nachrichtenlänge 8 Bit P2_SPI_Config(mod_no, slave_no, 1, 8, 0, 0) P2_SPI_Slave_Config(mod_no, slave_no, 0) Rem beide Fifos löschen P2_SPI_Slave_Clear_Fifo(mod_no, slave_no, 11b) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 462: Programmbeispiele

    'new minimum sample? Inc i1 'increment index > 1000) Then '1000 samples done? 'reset index Par_1 'write minimum value Par_2 'write maximum value 'reset minimum value 65535 'reset maximum value Par_10 'set End-Flag EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 463 Data_1[index] = P2_ADC(1, 1) 'acquire sample and save in array Rem for modules Pro II-AIn-F-x/x, delete the previous line and Rem use the following line instead (without comment char ') 'Data_1[index] = P2_ADCF(1, 1) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 464: Digitaler Pid-Regler (Pro Ii)

    Wartezeiten beim Einlesen der Regelabwei- chung (nach ) die Berechnung und Ausgabe P2_Set_Mux P2_Start_Conv des Stellwerts durchgeführt wird. Als Folge ergibt sich, dass jeweils der ausgegebene Stellwert aus der Regel- abweichung des vorigen Prozessaufrufs berechnet wird. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 465 Rem Note: For modules Pro II-AIn-F-x/x, the A/D instructions Rem must be renamed, parameters are left unchanged: Rem * P2_ADC -> P2_ADCF Rem * P2_Start_Conv -> P2_Start_ConvF Rem * P2_Wait_EOC -> P2_Wait_EOCF Rem * P2_Read_ADC -> P2_Read_ADCF ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 466: Empfangen Und Senden

    Par_2 = P2_Write_FIFO(module, 1, Data_1[Par_1]) (Par_2 = 0) Then Par_1 EndIf Par_3 = P2_Read_FIFO(module, 2)'read data (Par_3 <> -1) Then Data_2[Par_4] = Par_3 Par_4 EndIf (Par_4 > num_data) Then End 'all data are transferred ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 467 Inc sp Rem quit when all chars are sent > str_len) Then End Finish: 'send End marker "#" Par_11 = Asc(s_endchar) 'get ascii code Par_12 = P2_Write_FIFO(rs_adr, rs_no, Par_11) 'send code Until (Par_12 = 0) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 468 Chr(Par_21,s_temp) 'get char from ascii value Inc rp 'increase receive pointer Rem End marker received or string full? endflag = StrComp(s_temp, s_endchar) ((endflag=0) (rp>str_len)) Then End s_receive s_receive s_temp 'save char to string EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 469 Par_3 Init: P2_RS_Reset(rs_adr) P2_RS_Init(rs_adr,rs_no,38400,0,8,0,3) P2_RS485_Send(rs_adr,rs_no,0) 'set channel 2 as receiving val_to_send Event: received_val = P2_Read_FIFO(rs_adr,rs_no) 'read data (received_val = 55) Then P2_RS485_Send(rs_adr,rs_no,1) 'set channel 2 as sending status = P2_Write_FIFO(rs_adr,rs_no,val_to_send) 'send value EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 470: Kontinuierliche Messwertwandlung (Pro Ii)

    Verarbeitung der Messwerte, genügt die Leserate vielleicht nicht mehr zum Lesen der gewandelten Messwerte. In diesem Fall gehen Messwerte ver- loren, weil sie schneller überschrieben als gelesen werden, und Sie müssen die Abstimmung von Wandlungsrate und Leserate neu durchführen. ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 471 Rem memory index is in segments 4 or 1: read segment 3 P2_Burst_Read_Unpacked1(module,blk,seg2,Data_1,blk*2+1,3) segment EndIf EndIf (segment = 4) Then 'read 4. segment (mem_idx < seg2) Then Rem memory index is in segments 1 or 2: read segment 4 P2_Burst_Read_Unpacked1(module,blk,seg3,Data_1,blk*3+1,3) segment EndIf EndIf ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 472 ADwin Kontinuierliche Messwertwandlung (Pro II) ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 473: Befehlsübersichten

    · 148 P2_Comp_Set · 7 Calc_TicksToNs · 149 P2_Comp_Set_Voltage · 237 P2_CANFD_Enable_Receive_Fifo · 22 CPU_Digin (T11, T12) · 241 P2_CANFD_Enable_Transmit_Event_Fifo · 23 CPU_Digout · 239 P2_CANFD_Enable_Transmit_Fifo · 24 CPU_Dig_IO_Config · 240 P2_CANFD_Enable_Transmit_Queue · 25 CPU_Event_Config ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 474 P2_PWM_Enable · 9 P2_Event_Config · 285 P2_PWM_Get_Status · 8 P2_Event_Enable · 286 P2_PWM_Init · 12 P2_Event_Read · 288 P2_PWM_Latch · 289 P2_PWM_Reset · 290 P2_PWM_Standby_Value · 291 P2_PWM_Write_Latch · 386 P2_FlexRay_Get_Version · 292 P2_PWM_Write_Latch_Block ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 475 P2_SSI_Mode · 410 P2_SENT_Set_CRC_Implementation · 205 P2_SSI_Read · 411 P2_SENT_Set_Detection · 206 P2_SSI_Read2 · 413 P2_SENT_Set_PulseCount · 207 P2_SSI_Set_Bits · 416 P2_SENT_Check_Latch · 208 P2_SSI_Set_Clock · 421 P2_SENT_Config_Output · 209 P2_SSI_Set_Delay · 422 P2_SENT_Config_Serial_Messages ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 476 P2_Transmit_Status · 58 P2_Wait_EOC · 123 P2_Wait_EOCF · 59 P2_Wait_Mux · 131 P2_Write_DAC · 136 P2_Write_DAC32 · 132 P2_Write_DAC4 · 133 P2_Write_DAC4_Packed · 134 P2_Write_DAC8 · 135 P2_Write_DAC8_Packed · 334 P2_Write_Fifo · 335 P2_Write_Fifo_Full ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 477: A.2 Befehlsübersicht Nach Modulen

    DIO-32-TiCo2 Rev. E A-15 DIO-32/1-TiCo Rev. E A-15 DIO-8-D12 Rev. E A-16 EtherCAT-SL Rev. E A-16 EtherCAT-SL-40 Rev. E A-16 FlexRay-2 Rev. E A-16 LIN-2 Rev. E A-16 LS-2 Rev. E A-16 MIL-1553 Rev. E A-16 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 478 · 56 P2_Set_Mux P2_Set_Mux · 46 · 46 P2_SE_Diff P2_SE_Diff · 57 · 57 P2_Start_Conv P2_Start_Conv · 13 · 13 P2_Sync_All P2_Sync_All · 58 · 58 P2_Wait_EOC P2_Wait_EOC · 59 · 59 P2_Wait_Mux P2_Wait_Mux ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 479 P2_Seq_Init · 50 P2_Seq_Read · 51 P2_Seq_Read24 · 53 P2_Seq_Read_Packed · 54 P2_Seq_Start · 55 P2_Seq_Wait · 5 P2_Set_LED · 56 P2_Set_Mux · 57 P2_Start_Conv · 13 P2_Sync_All · 58 P2_Wait_EOC · 59 P2_Wait_Mux ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 480 P2_Read_ADCF4_Packed · 118 P2_Read_ADCF_SConv · 120 P2_Read_ADCF_SConv32 · 97 P2_Set_Average_Filter · 121 P2_Set_Gain · 5 P2_Set_LED · 122 P2_Start_ConvF · 13 P2_Sync_All · 15 P2_Sync_Enable · 17 P2_Sync_Mode · 19 P2_Sync_Stat · 123 P2_Wait_EOCF ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 481 P2_Event_Enable · 123 P2_Wait_EOCF · 12 P2_Event_Read · 109 P2_Read_ADCF · 117 P2_Read_ADCF32 · 111 P2_Read_ADCF4 · 115 P2_Read_ADCF4_Packed · 113 P2_Read_ADCF8 · 116 P2_Read_ADCF8_Packed · 97 P2_Set_Average_Filter · 5 P2_Set_LED · 13 P2_Sync_All ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 482 · 118 P2_Read_ADCF_SConv · 120 P2_Read_ADCF_SConv32 · 97 P2_Set_Average_Filter · 121 P2_Set_Gain · 5 P2_Set_LED · 122 P2_Start_ConvF · 13 P2_Sync_All · 15 P2_Sync_Enable · 17 P2_Sync_Mode · 19 P2_Sync_Stat · 123 P2_Wait_EOCF A-10 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 483 · 8 P2_Event_Enable · 12 P2_Event_Read · 5 P2_Set_LED · 130 P2_Start_DAC · 13 P2_Sync_All · 15 P2_Sync_Enable · 19 P2_Sync_Stat · 131 P2_Write_DAC · 136 P2_Write_DAC32 · 132 P2_Write_DAC4 · 133 P2_Write_DAC4_Packed A-11 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 484 · 242 P2_CANFD_Set_Baudrate_Nominal · 233 P2_CANFD_Set_LED · 246 P2_CANFD_Set_Mode · 264 P2_CANFD_Set_Reg · 244 P2_CANFD_Set_SID11 · 245 P2_CANFD_Set_TDC · 263 P2_CANFD_Transmit_Msg · 264 P2_CANFD_Transmit_Multi_Msg · 261 P2_CANFD_Write_TMO · 4 P2_Check_LED · 5 P2_Set_LED A-12 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 485 · 200 P2_Cnt_Read_Int_Register CPU-T10 · 201 P2_Cnt_Read_Latch · 202 · 6 P2_Cnt_Read_Latch4 Calc_Processdelay · 203 · 7 P2_Cnt_Sync_Latch Calc_TicksToNs · 9 P2_Event_Config · 8 P2_Event_Enable · 12 P2_Event_Read · 5 P2_Set_LED · 13 P2_Sync_All A-13 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 486 · 152 P2_Dig_Latch · 153 P2_Dig_Read_Latch · 154 P2_Dig_Write_Latch · 9 P2_Event_Config · 8 P2_Event_Enable · 12 P2_Event_Read · 185 P2_Get_Digout_Long · 5 P2_Set_LED · 13 P2_Sync_All · 15 P2_Sync_Enable · 19 P2_Sync_Stat A-14 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 487 · 12 P2_Event_Read P2_Event_Read · 185 · 185 P2_Get_Digout_Long P2_Get_Digout_Long · 5 · 5 P2_Set_LED P2_Set_LED · 13 · 13 P2_Sync_All P2_Sync_All · 15 · 15 P2_Sync_Enable P2_Sync_Enable · 19 · 19 P2_Sync_Stat P2_Sync_Stat A-15 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 488 · 356 P2_MIL_Set_Register · 377 P2_ECAT_Set_Mode · 350 P2_MIL_SMT_Init · 381 P2_ECAT_Write_Data_16F · 351 P2_MIL_SMT_Message_Read · 379 P2_ECAT_Write_Data_16L · 353 P2_MIL_SMT_Set_All_Filters · 375 · 354 P2_ECAT_Init P2_MIL_SMT_Set_Filter · 5 · 5 P2_Set_LED P2_Set_LED A-16 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 489 · 57 P2_Start_Conv · 130 P2_Start_DAC · 13 P2_Sync_All · 15 P2_Sync_Enable · 19 P2_Sync_Stat · 58 P2_Wait_EOC · 59 P2_Wait_Mux · 131 P2_Write_DAC · 136 P2_Write_DAC32 · 132 P2_Write_DAC4 · 133 P2_Write_DAC4_Packed A-17 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 490 · 210 · 211 P2_SSI_Start P2_SSI_Status · 211 · 57 P2_SSI_Status P2_Start_Conv · 13 P2_Sync_All · 130 P2_Start_DAC · 15 P2_Sync_Enable · 13 P2_Sync_All · 19 P2_Sync_Stat · 15 P2_Sync_Enable · 19 P2_Sync_Stat A-18 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 491 · 345 · 13 P2_Init_ProfinetIO P2_Sync_All · 15 · 347 P2_Sync_Enable P2_Run_ProfinetIO · 19 P2_Sync_Stat Profi-IRT-FO Rev. E · 4 P2_Check_LED · 5 P2_Set_LED Profi-IRT-FO-40 Rev. E · 345 P2_Init_ProfinetIO · 347 P2_Run_ProfinetIO A-19 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 492 · 12 P2_Event_Read · 326 P2_Get_RS · 327 P2_Read_Fifo · 331 P2_RS485_Send · 328 P2_RS_Init · 330 P2_RS_Reset · 332 P2_RS_Set_LED · 5 P2_Set_LED · 333 P2_Set_RS · 334 P2_Write_Fifo · 335 P2_Write_Fifo_Full A-20 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 493 P2_SENT_Clear_Serial_Message_Array · 396 P2_SENT_Command_Ready · 397 P2_SENT_Get_ChannelState · 398 P2_SENT_Get_ClockTick · 401 P2_SENT_Get_Fast_Channel1 · 403 P2_SENT_Get_Fast_Channel2 · 400 P2_SENT_Get_Fast_Channel_CRC_OK · 417 P2_SENT_Get_Latch_Data · 395 P2_SENT_Get_Msg_Counter · 399 P2_SENT_Get_PulseCount · 407 P2_SENT_Get_Serial_Message_Array · P2_SENT_Get_Serial_Message_CRC_OK A-21 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 494 · 455 · 453 P2_SPI_Slave_InFifo_Read P2_SPI_Slave_OutFifo_Empty · 453 · 451 P2_SPI_Slave_OutFifo_Empty P2_SPI_Slave_OutFifo_Write · 451 · 13 P2_SPI_Slave_OutFifo_Write P2_Sync_All · 13 · 15 P2_Sync_All P2_Sync_Enable · 15 · 19 P2_Sync_Enable P2_Sync_Stat · 19 P2_Sync_Stat A-22 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 495 · 181 P2_Digout_Set · 152 P2_Dig_Latch · 154 P2_Dig_Write_Latch · 9 P2_Event_Config · 8 P2_Event_Enable · 12 P2_Event_Read · 185 P2_Get_Digout_Long · 5 P2_Set_LED · 13 P2_Sync_All · 15 P2_Sync_Enable · 19 P2_Sync_Stat A-23 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 496: A.3 Thematische Befehlsübersicht

    8 Digitalwerte aus einem Feld auf die DAC 1…8 des angegebenen Moduls als (analoge) Spannung aus. P2_DAC8_Packed gibt die Digitalwerte aus einem Feld auf den DAC 1…8 des angegebenen Moduls als (analo- A-24 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 497: Analoge Eingänge (Fast-Adc)

    Wandlungsergebnisse aus 2 F-ADC des angegebenen Moduls aus und gibt sie gemeinsam in einem 32 Bit-Wert zurück. P2_Set_Gain setzt für einen Kanal des angegebenen Moduls die Betriebsart fest und damit auch den Ver- A-25 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 498: Analoge Eingänge (Multiplexer)

    24 Bit formatiert. P2_Read_ADC_SConv liest das Wandlungsergebnis des angegebenen Moduls aus und startet sofort eine neue Kon- vertierung. P2_Read_ADC_SConv24 liest das Wandlungsergebnis des angegebenen Moduls aus und startet sofort eine neue A-26 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 499 P2_Read_Msg gibt zurück, ob eine neue Nachricht in einem Message-Objekt eines der CAN-Controller auf dem angegebenen Modul empfangen wurde. P2_Read_Msg_Con gibt zurück, ob eine neue Nachricht in einem Message-Objekt eines der CAN-Controller auf A-27 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 500 CAN FD-Nachrichten mit einem Identifier von 11 Bit oder 12 Bit Länge gesendet werden und speichert die Information in einem CANFD-Datenfeld. P2_CANFD_Set_TDC stellt einen Ausgleich für Zeitverzögerungen beim Senden ein und speichert die Informatio- A-28 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 501 Zusatz-LEDs der MIL-Schnittstelle auf dem Modul ein oder aus. P2_MIL_Set_Register setzt den Wert eines Registers auf der MIL-Schnittstelle auf dem angegebenen Modul. P2_MIL_SMT_Init initialisiert den Modus SMT-Monitor 16 Bit (simple monitoring terminal) für beide Busse A und A-29 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 502 Signalpegel auf einem SENT-Kanal des angegebenen Moduls. P2_SENT_Set_Fast_Channel1 setzt den ersten 12 Bit-Wert in der SENT-Nachricht für einen SENT-Kanal auf dem an- gegebenen Modul. P2_SENT_Set_Fast_Channel2 setzt den zweiten 12 Bit-Wert in der SENT-Nachricht für einen SENT-Kanal auf dem A-30 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 503 SPI-Schnittstelle. P2_SPI_Master_Get_Value64 liest eine (bereits empfangene) SPI-Nachricht mit bis zu 64 Bit aus dem Eingangsregi- ster der SPI-Schnittstelle. P2_SPI_Master_Set_Clk_Wait fügt mehrere Wartezeiten nach einer wählbaren Anzahl von Takten in das Taktsignal A-31 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 504: Digitale Ein-/Ausgänge

    Anzahl der gespeicherten Wertepaare im FIFO der Flankenüberwachung zurück. P2_Digin_Fifo_Read liest die Wertepaare aus dem FIFO der Flankenüberwachung und schreibt sie in 2 Felder. P2_Digin_Fifo_Read_Fast P2_Digin_Fifo_Read liest die Wertepaare aus dem FIFO der Flankenüberwachung und A-32 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 505 P2_MIO_Dig_Write_Latch schreibt einen 32 Bit-Wert in das Latch-Register für digitale Ausgänge auf dem angegebe- nen Modul. P2_MIO_Get_Digout_Long gibt den Inhalt des Ausgangs-Latches (Register für digitale Ausgänge) auf dem angege- benen Modul zurück. A-33 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 506: Status-Variablen

    P2_RTD_Channel_Config stellt den Temperatur-Messmodus für einen bestimmten Kanal auf dem angegebenen Mo- dul ein. P2_RTD_Config initialisiert die Temperaturmessung auf dem angegebenen Modul. P2_RTD_Convert berechnet aus dem Digitalwert eines Temperatur-Fühlers den zugehörigen Widerstand oder A-34 ADwin-Pro II Software, Handbuch Apr. 2021...
  • Seite 507 Wert aus dem Latch eines Zählers als Rückgabewert zurück. P2_Cnt_Read_Latch4 gibt die Werte aus den Latches A aller 4 Zähler in einem Feld zurück. P2_Cnt_Sync_Latch kopiert die Inhalte der gewählten Zähler und PWM-Zähler in Zwischenspeicher. A-35 ADwin-Pro II Software, Handbuch Apr. 2021...

Inhaltsverzeichnis