n
n
kVA
kVA
Wegerfassung und Positionierung
6
f
f
Nockenschaltwerke
i
i
P
Hz
Hz
P
Beispiel gelöst im
Compiler
94
/*
======================================================================
Programm-Gerüst für Applikationen mit der erw. Nockenfunktion
======================================================================
*/
#include <const.h>
#include <io.h>
// Variablenstruktur für Nockenschaltwerk wird extern in *.h definiert
#include <camdef.h>
CamStructure CamData0;
ControlStructure MyCamControl;
/*=============================================
Hauptfunktion (IPOS-Eintrittsfunktion)
===============================================*/
main()
{
/*-------------------------------------
Initialisierung
--------------------------------------*/
MyCamControl.CamControl=0x80000002; // erw. Funktion aktiv
MyCamControl.CamOutShiftLeft=1;
MyCamControl.CamForceOn=//Maske zwingend einzuschalten
MyCamControl.CamForceOff=0; // Maske: Ausgänge zwingend auszuschalten
MyCamControl.CamSource=numof(ModActPos) ¦ (1<<31);
// Positions-Istwert Modulo-Format
MyCamControl.CamDestination=481;
MyCamControl.CamOutputs=1;
MyCamControl.CamDataStr0=numof(CamData0);
// Start Nockenstruktur 1 (Ausgangsbit 0)
CamData0.DeadTime=0;
CamData0.CamAreas=3;
CamData0.LeftLimit1= 64626;
CamData0.RightLimit1= 65536;
CamData0.LeftLimit2=
CamData0.RightLimit2= 910;
CamData0.LeftLimit3=
CamData0.RightLimit3= 33678;
CamData0.LeftLimit4=
CamData0.RightLimit4= 0;
_Go0( GO0_U_W_ZP );
_GetSys( MyCamControl.CamControl ,GS_CAM );
/*-------------------------------------
Hauptprogramm-Schleife
--------------------------------------*/
while(1)
{
}
}
// Ausgänge Grundgerät
// Anzahl der Nockenscheiben (max. 8)
// 3 Nockenbereiche wg. Modulo-Überl. im Fenster
// 355° an der Last = 360° x 64626/65536
// 360° an der Last
0;
// 0° an der Last
// 5° an der Last
31858;
// 175° an der Last
// 185° an der Last
0;
// nicht verwendet
// nicht verwendet
Handbuch – IPOSplus®