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...
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...
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...
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...
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...
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...
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...
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...
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...
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 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 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...
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...
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...
– 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...
– 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...
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...
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...
– 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...
'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 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 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 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 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 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...
– 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 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...
– 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...
– 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...
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...
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...
– 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...
– 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 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...
– 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...
– 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...
– 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...
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...
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...
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...
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...
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 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...
'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...
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...
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...
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...
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...
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...
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...
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...
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...
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...