Hallo Miteinander,
ich bin neu hier und komme eigentlich aus der Roboterwelt (industrie)
Es gibt aber ein Problem bei dem Ihr mir vielleicht weiterhelfen könnt.
Die Programme der Industrie Roboter von ABB kann man mit einem einfachen Text Editor erstellen.
Die Sprache nennt sich rapid und beinhaltet zum Teil vorgefertigte Funktion ansonsten kann man das ding eigentlich frei programmieren.
Muster
-----------------------
MODULE TEST_SYS(SYSMODULE,NOSTEPIN)
!************************************************* *********
!* Procedure System_Event *
!* *
!* set monitoring for worldzones *
!* is called by systemaction *
!* *
!* Date: Version: Programmer: Reason: *
!* 15.09.08 1.0 B.Kebekus *
!************************************************* *********
PROC System_Event ( )
TEST EventType()
CASE EVENT_NONE:
!----------------------------------------------------
! Not executing any event
!----------------------------------------------------
CASE EVENT_POWERON:
!----------------------------------------------------
! Executing POWER ON event
!--------- !
!Aktivierung Weltzone Arbeitsbereich SGM
WZBoxDef\Inside,SD_AR_SGM,P1_AR_SGM,P2_AR_SGM;
!Ausgangverknüpfung mit Weltzone und Würfel
WZDOSet\Stat,WZ_AR_SGM\Inside,SD_AR_SGM,SDO_AR_SGM ,1;
!
!Aktivierung Weltzone Arbeitsbereich ROBOT
WZBoxDef\Inside,SD_AR_ROBOT,P1_AR_ROBOT,P2_AR_ROBO T;
!Ausgangverknüpfung mit Weltzone und Würfel
WZDOSet\Stat,WZ_AR_ROBOT\Inside,SD_AR_ROBOT,SDO_AR _ROBOT,1;
!
!Aktivierung Weltzone Arbeitsbereich BAND
WZBoxDef\Inside,SD_AR_BAND,P1_AR_BAND,P2_AR_BAND;
!Ausgangverknüpfung mit Weltzone und Würfel
WZDOSet\Stat,WZ_AR_BAND\Inside,SD_AR_BAND,SDO_AR_B AND,0;
!
!Aktivierung Weltzone Arbeitsbereich QS Band
WZBoxDef\Inside,SD_AR_QS,P1_AR_QS,P2_AR_QS;
!Ausgangverknüpfung mit Weltzone und Würfel
WZDOSet\Stat,WZ_AR_QS\Inside,SD_AR_QS,SDO_AR_QS,0;
!
!Aktivierung Weltzone Arbeitsbereich NIO Band
WZBoxDef\Inside,SD_AR_NIO,P1_AR_NIO,P2_AR_NIO;
!Ausgangverknüpfung mit Weltzone und Würfel
WZDOSet\Stat,WZ_AR_NIO\Inside,SD_AR_NIO,SDO_AR_NIO ,0;
!
!Aktivierung Weltzone Arbeitsbereich ANGUSS
WZBoxDef\Inside,SD_AR_ANGUSS,P1_AR_ANGUSS,P2_AR_AN GUSS;
!Ausgangverknüpfung mit Weltzone und Würfel
WZDOSet\Stat,WZ_AR_ANGUSS\Inside,SD_AR_ANGUSS,SDO_ AR_ANGUSS,0;
!
!Aktivierung Weltzone Arbeitsbereich WT1
WZBoxDef\Inside,SD_AR_WT1,P1_AR_WT1,P2_AR_WT1;
!Ausgangverknüpfung mit Weltzone und Würfel
WZDOSet\Stat,WZ_AR_WT1\Inside,SD_AR_WT1,doAus_Ber_ WT1,0;
!
!Aktivierung Weltzone Arbeitsbereich WT2
WZBoxDef\Inside,SD_AR_WT2,P1_AR_WT2,P2_AR_WT2;
!Ausgangverknüpfung mit Weltzone und Würfel
WZDOSet\Stat,WZ_AR_WT2\Inside,SD_AR_WT2,doAus_Ber_ WT2,0;
!
!Aktivierung Weltzone Arbeitsbereich DT
!WZBoxDef\Inside,SD_AR_DT,P1_AR_DT,P2_AR_DT;
WZCylDef\Inside, SD_AR_DT, [1160,2340,-2000], 500, 1500;
!Ausgangverknüpfung mit Weltzone und Würfel
WZDOSet\Stat,WZ_AR_DT\Inside,SD_AR_DT,doAus_Ber_DT ,0;
!
!Aktivierung Weltzone Homeposition
WZHomeJointDef\Inside,SD_Home,pHomeABS,pHomeABS_De lta;
!Ausgangverknuepfung mit Weltzone und Wuerfel
WZDOSet\Stat,WZ_Home\Inside,SD_Home,sdo_HomePos,1;
!----------------------------------------------------
CASE EVENT_START:
!----------------------------------------------------
! Executing START event
!---------
!Startmeldung an SPS
PulseDO \PLength:=0.7, doStartSPS;
!---------
!Loeschen Merker Trigger sind initialisiert
bTriggInit:=FALSE;
!---------
!system was switched to manual mode
IF OpMode()=OP_AUTO THEN
!robot is moved in Manual mode
IF PPMovedInManMode()=TRUE THEN
!set PP back to main
ResetPPMoved;
!Antwort von Bediener
!Auskommentiert am 23.03.15AO
!IF b_Question(9)=TRUE THEN
!back to main
! Main;
!ENDIF
!programm abbruch
HR_EXIT;
ENDIF
ENDIF
!----------------------------------------------------
CASE EVENT_STOP:
!----------------------------------------------------
! Executing STOP event
!---------
!Stopmeldung an SPS
PulseDO \PLength:=0.7, doStopSPS;
!----------------------------------------------------
CASE EVENT_QSTOP:
!---------
!Stopmeldung an SPS
PulseDO \PLength:=0.7, doStopSPS;
!----------------------------------------------------
! Executing QSTOP event
!----------------------------------------------------
CASE EVENT_RESTART:
!----------------------------------------------------
! Executing RESTART event
!---------
!Startmeldung an SPS
PulseDO \PLength:=0.7, doStartSPS;
!---------
!Loeschen Merker Trigger sind initialisiert
bTriggInit:=FALSE;
!---------
!system was switched to manual mode
IF OpMode()=OP_AUTO THEN
!robot is moved in Manual mode
IF PPMovedInManMode()=TRUE THEN
!set PP back to main
ResetPPMoved;
!Antwort von Bediener
!Auskommentiert am 23.03.15AO
!IF b_Question(9)=TRUE THEN
!back to main
! Main;
! ENDIF
!programm abbruch
HR_EXIT;
ENDIF
ENDIF
!----------------------------------------------------
CASE EVENT_RESET:
!----------------------------------------------------
! Executing RESET event
!----------------------------------------------------
ENDTEST
!---------
ENDPROC
ENDMODULE
----------------------------------
So schön so gut.
Nun gibt es vom Hersteller bestimmte Application Dateien die KnowHow geschütz sind (Macht Sinn)
Sieht dann so aus!
----------------------------------
00000000h: FC 5C D7 29 0C 01 40 00 A7 B2 99 8C 7B 5C D7 29 ; ü\x)..Q.$² {\x)
und das geht dann über mehrere Zeilen so.
(Leider nur eine Zeile Auszug Shnapshot lässt sich nicht laden)
Meine Frage nun:
1. Was ist das für eine Codierung?
2. Wie kann ich es schaffen das ich meine erstellten Dateien genauso wandeln kann (KnowHow Schutz für meine Dateien)
Vielen Dank im Voraus
Bodo
ich bin neu hier und komme eigentlich aus der Roboterwelt (industrie)
Es gibt aber ein Problem bei dem Ihr mir vielleicht weiterhelfen könnt.
Die Programme der Industrie Roboter von ABB kann man mit einem einfachen Text Editor erstellen.
Die Sprache nennt sich rapid und beinhaltet zum Teil vorgefertigte Funktion ansonsten kann man das ding eigentlich frei programmieren.
Muster
-----------------------
MODULE TEST_SYS(SYSMODULE,NOSTEPIN)
!************************************************* *********
!* Procedure System_Event *
!* *
!* set monitoring for worldzones *
!* is called by systemaction *
!* *
!* Date: Version: Programmer: Reason: *
!* 15.09.08 1.0 B.Kebekus *
!************************************************* *********
PROC System_Event ( )
TEST EventType()
CASE EVENT_NONE:
!----------------------------------------------------
! Not executing any event
!----------------------------------------------------
CASE EVENT_POWERON:
!----------------------------------------------------
! Executing POWER ON event
!--------- !
!Aktivierung Weltzone Arbeitsbereich SGM
WZBoxDef\Inside,SD_AR_SGM,P1_AR_SGM,P2_AR_SGM;
!Ausgangverknüpfung mit Weltzone und Würfel
WZDOSet\Stat,WZ_AR_SGM\Inside,SD_AR_SGM,SDO_AR_SGM ,1;
!
!Aktivierung Weltzone Arbeitsbereich ROBOT
WZBoxDef\Inside,SD_AR_ROBOT,P1_AR_ROBOT,P2_AR_ROBO T;
!Ausgangverknüpfung mit Weltzone und Würfel
WZDOSet\Stat,WZ_AR_ROBOT\Inside,SD_AR_ROBOT,SDO_AR _ROBOT,1;
!
!Aktivierung Weltzone Arbeitsbereich BAND
WZBoxDef\Inside,SD_AR_BAND,P1_AR_BAND,P2_AR_BAND;
!Ausgangverknüpfung mit Weltzone und Würfel
WZDOSet\Stat,WZ_AR_BAND\Inside,SD_AR_BAND,SDO_AR_B AND,0;
!
!Aktivierung Weltzone Arbeitsbereich QS Band
WZBoxDef\Inside,SD_AR_QS,P1_AR_QS,P2_AR_QS;
!Ausgangverknüpfung mit Weltzone und Würfel
WZDOSet\Stat,WZ_AR_QS\Inside,SD_AR_QS,SDO_AR_QS,0;
!
!Aktivierung Weltzone Arbeitsbereich NIO Band
WZBoxDef\Inside,SD_AR_NIO,P1_AR_NIO,P2_AR_NIO;
!Ausgangverknüpfung mit Weltzone und Würfel
WZDOSet\Stat,WZ_AR_NIO\Inside,SD_AR_NIO,SDO_AR_NIO ,0;
!
!Aktivierung Weltzone Arbeitsbereich ANGUSS
WZBoxDef\Inside,SD_AR_ANGUSS,P1_AR_ANGUSS,P2_AR_AN GUSS;
!Ausgangverknüpfung mit Weltzone und Würfel
WZDOSet\Stat,WZ_AR_ANGUSS\Inside,SD_AR_ANGUSS,SDO_ AR_ANGUSS,0;
!
!Aktivierung Weltzone Arbeitsbereich WT1
WZBoxDef\Inside,SD_AR_WT1,P1_AR_WT1,P2_AR_WT1;
!Ausgangverknüpfung mit Weltzone und Würfel
WZDOSet\Stat,WZ_AR_WT1\Inside,SD_AR_WT1,doAus_Ber_ WT1,0;
!
!Aktivierung Weltzone Arbeitsbereich WT2
WZBoxDef\Inside,SD_AR_WT2,P1_AR_WT2,P2_AR_WT2;
!Ausgangverknüpfung mit Weltzone und Würfel
WZDOSet\Stat,WZ_AR_WT2\Inside,SD_AR_WT2,doAus_Ber_ WT2,0;
!
!Aktivierung Weltzone Arbeitsbereich DT
!WZBoxDef\Inside,SD_AR_DT,P1_AR_DT,P2_AR_DT;
WZCylDef\Inside, SD_AR_DT, [1160,2340,-2000], 500, 1500;
!Ausgangverknüpfung mit Weltzone und Würfel
WZDOSet\Stat,WZ_AR_DT\Inside,SD_AR_DT,doAus_Ber_DT ,0;
!
!Aktivierung Weltzone Homeposition
WZHomeJointDef\Inside,SD_Home,pHomeABS,pHomeABS_De lta;
!Ausgangverknuepfung mit Weltzone und Wuerfel
WZDOSet\Stat,WZ_Home\Inside,SD_Home,sdo_HomePos,1;
!----------------------------------------------------
CASE EVENT_START:
!----------------------------------------------------
! Executing START event
!---------
!Startmeldung an SPS
PulseDO \PLength:=0.7, doStartSPS;
!---------
!Loeschen Merker Trigger sind initialisiert
bTriggInit:=FALSE;
!---------
!system was switched to manual mode
IF OpMode()=OP_AUTO THEN
!robot is moved in Manual mode
IF PPMovedInManMode()=TRUE THEN
!set PP back to main
ResetPPMoved;
!Antwort von Bediener
!Auskommentiert am 23.03.15AO
!IF b_Question(9)=TRUE THEN
!back to main
! Main;
!ENDIF
!programm abbruch
HR_EXIT;
ENDIF
ENDIF
!----------------------------------------------------
CASE EVENT_STOP:
!----------------------------------------------------
! Executing STOP event
!---------
!Stopmeldung an SPS
PulseDO \PLength:=0.7, doStopSPS;
!----------------------------------------------------
CASE EVENT_QSTOP:
!---------
!Stopmeldung an SPS
PulseDO \PLength:=0.7, doStopSPS;
!----------------------------------------------------
! Executing QSTOP event
!----------------------------------------------------
CASE EVENT_RESTART:
!----------------------------------------------------
! Executing RESTART event
!---------
!Startmeldung an SPS
PulseDO \PLength:=0.7, doStartSPS;
!---------
!Loeschen Merker Trigger sind initialisiert
bTriggInit:=FALSE;
!---------
!system was switched to manual mode
IF OpMode()=OP_AUTO THEN
!robot is moved in Manual mode
IF PPMovedInManMode()=TRUE THEN
!set PP back to main
ResetPPMoved;
!Antwort von Bediener
!Auskommentiert am 23.03.15AO
!IF b_Question(9)=TRUE THEN
!back to main
! Main;
! ENDIF
!programm abbruch
HR_EXIT;
ENDIF
ENDIF
!----------------------------------------------------
CASE EVENT_RESET:
!----------------------------------------------------
! Executing RESET event
!----------------------------------------------------
ENDTEST
!---------
ENDPROC
ENDMODULE
----------------------------------
So schön so gut.
Nun gibt es vom Hersteller bestimmte Application Dateien die KnowHow geschütz sind (Macht Sinn)
Sieht dann so aus!
----------------------------------
00000000h: FC 5C D7 29 0C 01 40 00 A7 B2 99 8C 7B 5C D7 29 ; ü\x)..Q.$² {\x)
und das geht dann über mehrere Zeilen so.
(Leider nur eine Zeile Auszug Shnapshot lässt sich nicht laden)
Meine Frage nun:
1. Was ist das für eine Codierung?
2. Wie kann ich es schaffen das ich meine erstellten Dateien genauso wandeln kann (KnowHow Schutz für meine Dateien)
Vielen Dank im Voraus
Bodo
Comment