Commit 4b37fc90 authored by Claes Sjofors's avatar Claes Sjofors

Merge branch 'master' of 62.20.65.89:/data1/git/pwr

parents 2907ec87 e50fa1a4
Volume ABB $ClassVolume 0.0.250.2
Body SysBody 01-JAN-1970 01:00:00.00
Attr NextOix = "_X3943"
Attr NextCix = "_X40"
Attr NextCix = "_X41"
Attr NextTix[0] = "_X3"
EndBody
Object Type $TypeHier 1749 12-OCT-2005 13:25:10.29
......@@ -35568,7 +35568,7 @@ ABB ACS800 Aggregate
EndObject
EndObject
Object Template ABB_ACS_Pb_Slave 2156888064 01-JAN-1970 01:00:00.00
Body RtBody 08-NOV-2007 17:33:02.02
Body RtBody 26-NOV-2010 09:20:04.88
Attr Super.Specification = "ABB ACS800 Profibus slave"
Attr Super.DataSheet = "$pwr_lang/dsh/abb_acs800.html"
Attr Super.GSDfile = "$pwr_exe/abb_acs_pb_slave.gsd"
......@@ -35577,11 +35577,55 @@ ABB ACS800 Aggregate
Attr Super.StallAction = 1
Attr Super.ErrorSoftLimit = 15
Attr Super.ErrorHardLimit = 50
Attr Super.WdFact1 = 100
Attr Super.WdFact1 = 10
Attr Super.WdFact2 = 10
EndBody
EndObject
EndObject
!/**
! @Version 1.0
! @Group Profibus
! @Summary Profinet device ABB ACS800
! Profinet device object for frequency converter ABB ACS800.
!
! The device object is configured below a Profinet controller object in
! the node hierarchy.
!
! @b Configuration
! Use the 'Configure Device' method in the popup menu of the object
! to configure the slave.
!*/
Object ABB_ACS_PnDevice $ClassDef 40 26-NOV-2010 09:17:17.99
Body SysBody 26-NOV-2010 09:17:04.29
Attr Editor = 0
Attr Method = 0
Attr Flags = 10256
EndBody
Object RtBody $ObjBodyDef 1 26-NOV-2010 09:17:04.32
Body SysBody 26-NOV-2010 09:17:23.87
Attr StructName = "ABB_ACS_PnDevice"
Attr NextAix = "_X3"
EndBody
Object Super $Attribute 2 26-NOV-2010 09:17:04.32
Body SysBody 26-NOV-2010 09:17:44.45
Attr PgmName = "Super"
Attr Flags = 393216
Attr TypeRef = "Profibus:Class-PnDevice"
EndBody
EndObject
EndObject
Object Template ABB_ACS_PnDevice 2158198784 01-JAN-1970 01:00:00.00
Body RtBody 26-NOV-2010 09:19:26.26
Attr Super.Specification = "ABB ACS800 Profibus slave"
Attr Super.DataSheet = "$pwr_lang/dsh/abb_acs800.html"
Attr Super.GSDMLfile = "$pwr_exe/GSDML-V2.0-ABBdrives-RETA02-20070621.xml"
Attr Super.Process = 1
Attr Super.ErrorSoftLimit = 100
Attr Super.ErrorHardLimit = 1000
Attr Super.ByteOrdering = 1
EndBody
EndObject
EndObject
Object ABB_ACS_PPO5_IoModule $ClassDef 38 02-JUL-2010 08:20:23.32
Body SysBody 02-JUL-2010 08:20:30.45
Attr Editor = 0
This diff is collapsed.
This diff is collapsed.
Volume OtherManufacturer $ClassVolume 0.0.250.1
Body SysBody 01-JAN-1970 01:00:00.00
Attr NextOix = "_X2251"
Attr NextCix = "_X41"
Attr NextOix = "_X2883"
Attr NextCix = "_X51"
Attr NextTix[0] = "_X2"
EndBody
Object Type $TypeHier 1758 09-OCT-2007 14:20:45.77
......@@ -21,4 +21,6 @@
080115 cs - Reading of Di, Ai and Ii can be disabled by setting ConversionOn in channel object to 0.
080229 rk - I/O-handling routines generalized and some routines moved to rt_io_bus.c
100708 rk - Added functionality for PROFINET IO using Softing Profinet Stack
101202 rk - Finalized PROFINET IO functionality. Added several classes
for handling different types of Profinet IO.
......@@ -52,8 +52,9 @@ PnViewerGtk::PnViewerGtk (
void *v_parent_ctx,
GtkWidget *v_parent_wid,
const char *v_name,
const char *v_device,
pwr_tStatus *status) :
PnViewer( v_parent_ctx, v_name, status), parent_wid(v_parent_wid)
PnViewer( v_parent_ctx, v_name, v_device, status), parent_wid(v_parent_wid)
{
const int window_width = 800;
const int window_height = 600;
......
......@@ -38,6 +38,7 @@ class PnViewerGtk : public PnViewer {
void *v_parent_ctx,
GtkWidget *v_parent_wid,
const char *v_name,
const char *v_device,
pwr_tStatus *status);
~PnViewerGtk();
......
......@@ -42,7 +42,7 @@ typedef struct {
static void usage()
{
printf("\nUsage: profinet_viewer [-l language]\n");
printf("\nUsage: profinet_viewer [-l language] [device]\n");
}
static void viewer_close( void *c)
......@@ -56,6 +56,7 @@ int main( int argc, char *argv[])
int i;
int sts;
tViewer *ctx;
char dev_name[20] = "eth1";
ctx = (tViewer *)calloc( 1, sizeof(tViewer));
......@@ -84,11 +85,14 @@ int main( int argc, char *argv[])
Lng::set( argv[i+1]);
i++;
}
else if (strncmp(argv[i], "eth", 3) == 0) {
snprintf(dev_name, sizeof(dev_name), "%s", argv[i]);
}
}
// Open window
try {
ctx->viewer = new PnViewerGtk( ctx, ctx->toplevel, "Profinet Viewer", &sts);
ctx->viewer = new PnViewerGtk( ctx, ctx->toplevel, "Profinet Viewer", dev_name, &sts);
ctx->viewer->close_cb = viewer_close;
}
catch ( co_error &e) {
......
......@@ -40,12 +40,14 @@
PnViewer::PnViewer(
void *v_parent_ctx,
const char *v_name,
const char *v_device,
pwr_tStatus *status) :
parent_ctx(v_parent_ctx), viewernav(NULL), wow(0), input_open(0), pnet(0), close_cb(0)
{
strcpy( name, v_name);
strcpy( device, v_device);
pnet = new PnViewerPNAC( status);
pnet = new PnViewerPNAC( status, device);
}
PnViewer::~PnViewer()
......
......@@ -41,6 +41,7 @@ class PnViewer {
PnViewer(
void *v_parent_ctx,
const char *v_name,
const char *v_device,
pwr_tStatus *status);
virtual ~PnViewer();
......@@ -62,6 +63,7 @@ class PnViewer {
void *parent_ctx;
char name[80];
char device[20];
PnViewerNav *viewernav;
CoWow *wow;
int input_open;
......
......@@ -37,7 +37,7 @@
PnViewerPNAC::PnViewerPNAC( pwr_tStatus *sts)
PnViewerPNAC::PnViewerPNAC( pwr_tStatus *sts, const char *dev_name)
{
int s;
struct ifreq ifr = {};
......@@ -59,7 +59,7 @@ PnViewerPNAC::PnViewerPNAC( pwr_tStatus *sts)
/* Get configs for device */
s = socket(AF_INET, SOCK_DGRAM, 0);
strncpy(ifr.ifr_name, "eth0", sizeof(ifr.ifr_name));
strncpy(ifr.ifr_name, dev_name, sizeof(ifr.ifr_name));
if (ioctl(s, SIOCGIFADDR, &ifr) >= 0) {
strcpy(dev_data.ip_address, inet_ntoa(((struct sockaddr_in *) &ifr.ifr_addr)->sin_addr));
}
......@@ -73,7 +73,7 @@ PnViewerPNAC::PnViewerPNAC( pwr_tStatus *sts)
strcpy(dev_data.device_name, "dumle");
dev_data.device_num = PN_DEVICE_REFERENCE_THIS_STATION;
strcpy(dev_data.device_text, "controller");
strcpy(dev_data.device_text, dev_name);
dev_data.vendor_id = 279; // Softing vendor id
dev_data.device_id = 0;
strcpy(dev_data.version, "1.0");
......
......@@ -46,7 +46,7 @@
class PnViewerPNAC {
public:
PnViewerPNAC( pwr_tStatus *sts);
PnViewerPNAC( pwr_tStatus *sts, const char *dev_name);
~PnViewerPNAC();
void fetch_devices( vector<PnDevice>& dev_vect);
......
......@@ -93,11 +93,14 @@ Finely-graduated modular distributed I/O device, protection type IP20
# Processing file: /home/claes/gsdml/test.xml
328 8192
GRT1-PNT
# Processing file: /home/claes/gsdml/GSDML-V2.0-ABBdrives-RETA02-20070621.xml
26 1
ABB RETA-02
PROFINET IO module RETA-02
# Processing file: /home/claes/gsdml/gsdml-v2.0-siemens-sinamicsg120prof-20080514.xml
42 1288
SINAMICS
SINAMICS drives
# Processing file: /home/claes/gsdml/GSDML-V1.0-PhoenixContact-FL-SWITCH-MC-16TX-V1.0-20051207.xml
176 19
Factory Line
......
This diff is collapsed.
; (c) 2006 Siemens AG A&D SD
;
; Profibus-DP Generic Station Description for SINAMICS G120 Safety incl. PROFIsafe
;
; MLFB: 6SL3244-0BA21-1PA0 (G120 CU240S DP F)
;
; Author: SIEMENS AG A&D SD
;
; Date of Creation: 11.03.2006 Initial version
; Changes:
; 10.11.2006 model_name changed; new module 353 and 354; software_release changed
; 05.01.2007 add version to model_Name and info_text; filename changed to SI028116
; 17.07.2007 F_IO_StructureDescCRC=5639 added
;
;==========================================================================
;
;*********************** general keys
;
#Profibus_DP
;
GSD_Revision=5
Vendor_Name="Siemens AG A&D"
Model_Name="SINAMICS G120 CU240S DP F v3.00"
Info_Text="DP-Slave SINAMICS G120 CU240S DP F v3.00 safety variant with PROFIsafe v1.x and DP-V1 interface (cyclic and acyclic communication)."
Revision="C01"
Ident_Number=0x8158
Protocol_Ident=0 ; 0 = PROFIBUS-DP
Station_Type=0 ; 0 = DP-Slave
FMS_supp=0 ; no FMS / DP mixed device
Hardware_Release="C01"
Software_Release="V03.0"
;
OrderNumber="6SL3 244-0BA21-1PA0"
;
;supported baudrates
9.6_supp=1
19.2_supp=1
45.45_supp=1
93.75_supp=1
187.5_supp=1
500_supp=1
1.5M_supp=1
3M_supp=1
6M_supp=1
12M_supp=1
;
;maximum station delaytime of responder at corresponding baudrate
MaxTsdr_9.6=40
MaxTsdr_19.2=40
MaxTsdr_45.45=40
MaxTsdr_93.75=40
MaxTsdr_187.5=40
MaxTsdr_500=40
MaxTsdr_1.5M=40
MaxTsdr_3M=50
MaxTsdr_6M=100
MaxTsdr_12M=200
;
Redundancy=0 ; not supported
Repeater_Ctrl_Sig=2 ; TTL
24V_Pins=0 ; no 24 Volt
Implementation_Type="DPC31"
Bitmap_Device="SI028158"
;*********************** slave basic ---
Freeze_Mode_supp=1
Sync_Mode_supp=1
Auto_Baud_supp=1
Set_Slave_Add_supp=0
;
Max_User_Prm_Data_Len=36 ;max. length of param tele
Min_Slave_Intervall=1 ; = 100 s
Modular_Station=1
Max_Module=2
Max_Input_Len=32
Max_Output_Len=32
Max_Data_Len=64
Fail_Safe=1
Max_Diag_Data_Len=48
Modul_Offset=1
Slave_Family=1@SINAMICS
;
;*********************** (GSD R5)
Ident_Maintenance_supp=1
;
;*********************** Text defines
;PrmText=1
;Text(0)="No"
;Text(1)="Yes"
;EndPrmText
PrmText=2
;Text(0)="SIL 1"
Text(1)="SIL 2"
;Text(2)="SIL 3"
;Text(3)="NoSIL"
EndPrmText
PrmText=3
Text(0)="No Check"
;Text(1)="Check"
EndPrmText
;Text-Definition fuer CRC-Length
PrmText=4
;Text(0)="reserved"
Text(1)="2 Byte CRC"
;Text(2)="4 Byte CRC"
;Text(3)="reserved 1"
EndPrmText
;*********************** Ext-User-Prm-Data-Def-List
ExtUserPrmData=1 "F_Check_SeqNr" ; Reference number 1
Bit(0) 0 0-0 ; Default = 0
Prm_Text_Ref=3 ; Pointer to text definition 3
EndExtUserPrmData
ExtUserPrmData=2 "F_SIL"
BitArea(2-3) 1 1-1
Prm_Text_Ref=2
EndExtUserPrmData
ExtUserPrmData=3 "F_CRC_Length"
BitArea(4-5) 1 1-1
Prm_Text_Ref=4
EndExtUserPrmData
ExtUserPrmData=4 "F_Par_Version"
BitArea(6-7) 0 0-0
EndExtUserPrmData
ExtUserPrmData=5 "F_Source_Add"
Unsigned16 1 1-65534
EndExtUserPrmData
ExtUserPrmData=6 "F_Dest_Add"
Unsigned16 1 1-65534
EndExtUserPrmData
ExtUserPrmData=7 "F_WD_Time"
Unsigned16 100 10-65535
EndExtUserPrmData
ExtUserPrmData=8 "F_Par_CRC"
Unsigned16 0x783E 0-65535
EndExtUserPrmData
ExtUserPrmData=10 "[SlotNumber]"
Unsigned8 1 1-254 ; Default = 1, Max = 254
EndExtUserPrmData
;*********************** diagnose
UnitDiagType = 129
X_Unit_Diag_Area=24-31
X_Value(64) = "F add. does not match F_Dest_Add"
X_Value(65) = "Wrong F destination address"
X_Value(66) = "Wrong F source address"
X_Value(67) = "Watchdog time value=0"
X_Value(68) = "Wrong SIL level"
X_Value(69) = "Wrong F-CRC length"
X_Value(70) = "Wrong F-Parameter version"
X_Value(71) = "CRC1 fault"
X_Value(72) = "reserved"
X_Value(73) = "reserved"
X_Value(74) = "reserved"
X_Unit_Diag_Area_End
EndUnitDiagType
;
;*********************** slave related keywords for extended parameterization (GSD V4)
Ext_User_Prm_Data_Const(0)=0 ;DPV1 state 1
Ext_User_Prm_Data_Const(1)=0 ;DPV1 state 2
Ext_User_Prm_Data_Const(2)=0 ;DPV1 state 3
;
;*********************** slave extensions (GSD R3)
DPV1_Slave=1
;
C1_Read_Write_supp=1
C2_Read_Write_supp=1
C1_Max_Data_Len=240
C2_Max_Data_Len=240
C1_Response_Timeout=1 ;Timebase 10ms
C2_Response_Timeout=1 ;Timebase 10ms
C1_Read_Write_required=0
C2_Read_Write_required=0
C2_Max_Count_Channels=2
Max_Initiate_PDU_Length=52
WD_Base_1ms_supp=1
;
DPV1_Data_Types=0
Check_Cfg_Mode=0
;
;*********************** slave data exchange broadcast
Publisher_supp=0
;Subscriber_supp=0
;if Subscriber = 1
;X_PRM_SAP_supp=1
;X_Max_User_Prm_Data_Len=20
;X_Prm_Block_Structure_supp=1
;
;DXB_Max_Link_Count=10
;DXB_Max_Data_Length=40
;DXB_Subscribertable_Block_Location=1
;
;*********************** slave data exchange Isochron
;Isochron_Mode_supp=1
;Isochron_Mode_required=0
; do not specify this parameters if Isochron_mode_supp=0
;TBase_DP=1500 ; 125 s (1500/12)
;TDP_Max=256 ; 32 ms (256*TBase_DP) 32ms is maximum
;TDP_Min=16 ; 2 ms ( 16*TBase_DP)
;TBase_IO=1500 ; 125 s (1500/12)
;TI_Min=1 ; 125 s ( 1*TBase_IO)
;TO_Min=1 ; 125 s ( 1*TBase_IO)
;T_PLL_W_MAX=12 ; 1 s ( 12/12)
;
;*********************** module definitions
;
;=======================================
Module="Standard telegram 1" 0xE1, 0xD1
1
Info_Text="Standard telegram 1 (PZD-2/2) according to PROFIdrive V4. 2 words output and 2 words input"
EndModule
;=======================================
Module="Standard telegram 20" 0xE1, 0xD5
2
Info_Text="Standard telegram 20 (PZD-2/6) according to PROFIdrive V4. 2 words output and 6 words input."
EndModule
;=======================================
Module="SIEMENS telegram 350" 0xE3, 0xD3
3
Info_Text="SIEMENS specific telegram 350 (PZD-4/4). 4 words output and 4 words input."
EndModule
;=======================================
Module="SIEMENS telegram 352" 0xE5, 0xD5
4
Info_Text="SIEMENS specific telegram 352 (PZD-6/6). 6 words output and 6 words input. Output words 3-6 defined as PCS7 handled data."
EndModule
;=======================================
;Module="SIEMENS telegram 353" 0xF3, 0xE1, 0xD1
Module="SIEMENS telegram 353" 0xf3, 0xc3, 0xc1, 0xc1, 0xfd, 0x01, 0x61
5
Info_Text="SIEMENS specific telegram 353 (PKW-4/4 + PZD-2/2). PKW data with 4 words input and 4 words output. PZD data with 2 words output and 2 words input."
EndModule
;=======================================
;Module="SIEMENS telegram 354" 0xF3, 0xE5, 0xD5
Module="SIEMENS telegram 354" 0xf3, 0xc3, 0xc5, 0xc5, 0xfd, 0x01, 0x62
6
Info_Text="SIEMENS specific telegram 354 (PKW-4/4 + PZD 6/6). PKW data with 4 words input and 4 words output. PZD data with 6 words output and 6 words input, outputwords 3-6 are defined as PCS7 data."
EndModule
;=======================================
Module="PROFIsafe v1.x Module" 0xC6,0x85,0x85,0x05,0x05,0x0a,0x05,0x05,0x0a
7
Info_Text = "PROFIsafe v1.x module, take care on Dest_Adr"
F_Ext_Module_Prm_Data_Len=14
F_Ext_User_Prm_Data_Const(0)=0xE ;length of block F-Parameter
F_Ext_User_Prm_Data_Const(1)=5 ;sign F-Parameter
F_Ext_User_Prm_Data_Ref(2)=10 ;auto slot number F-Moduls
F_Ext_User_Prm_Data_Const(3)=0 ;specifier
F_Ext_User_Prm_Data_Const(4)=0 ;F-Param-Flag 1 default 0x14
F_Ext_User_Prm_Data_Const(5)=0 ;F-Param-Flag 2 default 0x00
F_Ext_User_Prm_Data_Ref(4)=1 ;F-Param 1 Bit 0 CheckSeqNr = 0
F_Ext_User_Prm_Data_Ref(4)=2 ;F-Param 1 Bit 2-3 SIL = 1
F_Ext_User_Prm_Data_Ref(4)=3 ;F-Param 1 Bit 4-5 CRC Length = 2 Byte
F_Ext_User_Prm_Data_Ref(5)=4 ;F-Param 2 Bit 6-7 Par Version = 0
F_Ext_User_Prm_Data_Ref(6)=5 ;F-Source-Adr
F_Ext_User_Prm_Data_Ref(8)=6 ;F-Dest-Adr
F_Ext_User_Prm_Data_Ref(10)=7 ;F-WD-Time
F_Ext_User_Prm_Data_Ref(12)=8 ;F-CRC1
;The value of this parameter will not be transferred to the slave device but is
;needed to avoid errors during the parametrization with the configuration tool.
F_ParamDescCRC=0xA01D
F_IO_StructureDescCRC=5639
EndModule
;=======================================
This diff is collapsed.
This diff is collapsed.
......@@ -15,6 +15,7 @@ ifndef rules_mk
endif
vpath %.gsd $(hw_source):$(os_source):$(co_source)
vpath %.xml $(hw_source):$(os_source):$(co_source)
source_dirs = $(hw_source) $(os_source) $(co_source)
......@@ -27,18 +28,29 @@ gsd_sources := $(sort \
) \
)
xml_sources := $(sort \
$(foreach file, \
$(foreach dir, \
$(source_dirs), \
$(wildcard $(dir)/*.xml) \
), $(notdir $(file)) \
) \
)
export_gsd := $(patsubst %.gsd, $(exe_dir)/%.gsd, $(gsd_sources))
clean_gsd := $(patsubst %.gsd, clean_%.gsd, $(gsd_sources))
export_xml := $(patsubst %.xml, $(exe_dir)/%.xml, $(xml_sources))
clean_xml := $(patsubst %.xml, clean_%.xml, $(xml_sources))
.PHONY : all init copy lib exe clean realclean\
$(clean_gsd)
$(clean_gsd) $(clean_xml)
all : init copy
init :
copy : $(export_gsd)
copy : $(export_gsd) $(export_xml)
lib :
......@@ -46,7 +58,7 @@ exe :
clean :
realclean : clean $(clean_gsd)
realclean : clean $(clean_gsd) $(clean_xml)
$(export_gsd) : $(exe_dir)/%.gsd : %.gsd
@ echo "Exporting $< ..."
......@@ -55,4 +67,11 @@ $(export_gsd) : $(exe_dir)/%.gsd : %.gsd
$(clean_gsd) : clean_%.gsd : %.gsd
@ rm $(exe_dir)/$*.gsd
$(export_xml) : $(exe_dir)/%.xml : %.xml
@ echo "Exporting $< ..."
@ $(cp) $(cpflags) $(source) $(target)
$(clean_xml) : clean_%.xml : %.xml
@ rm $(exe_dir)/$*.xml
......@@ -134,7 +134,7 @@ static pwr_tStatus IoAgentInit (
gethostname(hname, 40);
s = socket(AF_INET, SOCK_DGRAM, 0);
strncpy(ifr.ifr_name, "eth1", sizeof(ifr.ifr_name));
strncpy(ifr.ifr_name, op->EthernetDevice, sizeof(ifr.ifr_name));
if (ioctl(s, SIOCGIFADDR, &ifr) >= 0) {
strcpy(dev_data->ip_address, inet_ntoa(((struct sockaddr_in *) &ifr.ifr_addr)->sin_addr));
}
......@@ -147,7 +147,7 @@ static pwr_tStatus IoAgentInit (
strcpy(dev_data->device_name, hname);
dev_data->device_num = PN_DEVICE_REFERENCE_THIS_STATION;
strcpy(dev_data->device_text, "controller");
strcpy(dev_data->device_text, op->EthernetDevice);
dev_data->vendor_id = 279; // Softing vendor id
dev_data->device_id = 0;
strcpy(dev_data->version, "1.0");
......
......@@ -442,7 +442,7 @@ void pack_download_req(T_PNAK_SERVICE_REQ_RES *ServiceReqRes, GsdmlDeviceData *d
sprintf(pSDR->DeviceName, dev_data->device_name);
if (device_ref == PN_DEVICE_REFERENCE_THIS_STATION) {
sprintf(pSDR->InterfaceName, "eth1");
sprintf(pSDR->InterfaceName, dev_data->device_text);
pSDR->Flag = PN_SERVICE_DOWNLOAD_FLAG_AUTO_CONTROL_RES;
ar_property = 0;
pSDR->InstanceLowByte = 0;
......@@ -452,7 +452,8 @@ void pack_download_req(T_PNAK_SERVICE_REQ_RES *ServiceReqRes, GsdmlDeviceData *d
ar_property = PROFINET_AR_PROPERTY_STATE_PRIMARY |
PROFINET_AR_PROPERTY_PARAMETER_SERVER_CM |
PROFINET_AR_PROPERTY_DATA_RATE_100MBIT;
pSDR->InstanceLowByte = 1;
pSDR->InstanceHighByte = _PN_U16_HIGH_BYTE(dev_data->instance);
pSDR->InstanceLowByte = _PN_U16_LOW_BYTE(dev_data->instance);
}
no_items = sscanf(dev_data->version, "%hhi.%hhi", &high_byte, &low_byte);
......@@ -882,6 +883,10 @@ int unpack_get_alarm_con(T_PNAK_SERVICE_DESCRIPTION* pSdb, io_sAgentLocal *local
dev->Alarm.ModuleIdentNumber = module_ident_number;
dev->Alarm.SubmoduleIdentNumber = submodule_ident_number;
dev->Alarm.Specifier = alarm_spec;
dev->Alarm.ManuSpecLength = data_length;
if (data_length > 0) {
memcpy(dev->Alarm.Data, data, MIN(data_length, sizeof(dev->Alarm.Data)));
}
}
}
......
......@@ -36,6 +36,8 @@
#endif
#define PN_MAX_MANU_SPEC_DIAGS 200
void pack_set_ip_settings_req(T_PNAK_SERVICE_REQ_RES *ServiceReqRes, PnDeviceInfo *dev_info);
void pack_set_device_name_req(T_PNAK_SERVICE_REQ_RES *ServiceReqRes, PnDeviceInfo *dev_info);
......
This diff is collapsed.
......@@ -6,3 +6,6 @@
070426 rk rt Added IO-method's for Siemens_DiagRepeater.
070502 rk mmi Added object graphs for classes Siemens_DiagRepeater and
Siemens_DR_SegmStatus.
101202 rk wbl Added classes for Sinamics G120 drive with Profinet/Profibus.
101202 rk wbl Added classes for Siemens ET200M/S using Profinet.
This diff is collapsed.
This diff is collapsed.
......@@ -138,3 +138,4 @@
100304 cs script Script type int change from int to long int.
100610 cs emon Support for EmergBreakAction Reboot added.
100617 cs cdh Bugfix in cdh_SuppressSuperAll.
101202 rk rt Added support for handling i/o-channels hidden inside attribute..
This diff is collapsed.
......@@ -52,6 +52,25 @@ if [ $1 = $cmd ]; then
return
fi
if [ "$pwre_os" == "" ]; then
# Set default values for os and hw
unamestr=`eval uname`
machine=`eval uname -m`
if [ $unamestr == "Darwin" ]; then
export pwre_os="os_macos"
export pwre_hw="hw_x86_64"
elif [ $unamestr == "FreeBSD" ]; then
export pwre_os="os_freebsd"
export pwre_hw="hw_x86_64"
else
if [ $machine != "x86_64" ]; then
machine="x86"
fi
export pwre_os="os_linux"
export pwre_hw="hw_"$machine
fi
fi
$pwre_bin/pwre.pl $@
......
......@@ -52,6 +52,25 @@ if [ $1 = $cmd ]; then
return
fi
if [ "$pwre_os" == "" ]; then
# Set default values for os and hw
unamestr=`eval uname`
machine=`eval uname -m`
if [ $unamestr == "Darwin" ]; then
export pwre_os="os_macos"
export pwre_hw="hw_x86_64"
elif [ $unamestr == "FreeBSD" ]; then
export pwre_os="os_freebsd"
export pwre_hw="hw_x86_64"
else
if [ $machine != "x86_64" ]; then
machine="x86"
fi
export pwre_os="os_linux"
export pwre_hw="hw_"$machine
fi
fi
$pwre_bin/pwre.pl $@
......
......@@ -52,6 +52,25 @@ if [ $1 = $cmd ]; then
return
fi
if [ "$pwre_os" == "" ]; then
# Set default values for os and hw
unamestr=`eval uname`
machine=`eval uname -m`
if [ $unamestr == "Darwin" ]; then
export pwre_os="os_macos"
export pwre_hw="hw_x86_64"
elif [ $unamestr == "FreeBSD" ]; then
export pwre_os="os_freebsd"
export pwre_hw="hw_x86_64"
else
if [ $machine != "x86_64" ]; then
machine="x86"
fi
export pwre_os="os_linux"
export pwre_hw="hw_"$machine
fi
fi
$pwre_bin/pwre.pl $@
......
......@@ -182,6 +182,7 @@ palette NavigatorPalette
menu Siemens
{
class Siemens_Motor_1LA
class Siemens_G120_Tgm1
}
menu Suco
{
......@@ -276,6 +277,7 @@ palette NavigatorPalette
class Siemens_DiagRepeater
class Siemens_ET200S_IM151
class Siemens_ET200M_IM153
class Sinamics_G120_PbSlave
}
}
menu Profinet
......@@ -287,6 +289,10 @@ palette NavigatorPalette
menu Devices
{
class PnDevice
class Siemens_ET200S_PnDevice
class Siemens_ET200M_PnDevice
class Sinamics_G120_PnDevice
class ABB_ACS_PnDevice
}
}
menu Modbus_TCP
......@@ -1017,6 +1023,10 @@ palette PlcEditorPalette
class ABB_DiffPressureSensor_265DSFo
class ABB_FlowSensor_FXE4000Fo
}
menu Siemens
{
class Sinamics_G120_Tgm1Fo
}
menu OtherManufacturer
{
class Eurotherm_TC3001Fo
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment