I wish to create a user alarm when a certain DI gets on but I am not able to write User alarm in BG logic as I am getting syntax error .
Please help me guys I am a newbie and wish to learn
Thanks in advance !!!!!
I wish to create a user alarm when a certain DI gets on but I am not able to write User alarm in BG logic as I am getting syntax error .
Please help me guys I am a newbie and wish to learn
Thanks in advance !!!!!
In BG from all syntaxis you can you assign. Write your source code that was be easier.
I have been trying to implement following logic
IF(DI[23]=ON),JMP LBL[1]
LBL[1]
UALM[1]
But I am not able to display User alarm as it is showing INTP-443 INVALID ITEM FOR MIXED LOGIC.
Can you help me generate alarm for the above logic or if there is any other way to generate alarm, then please tell me.
Thanks in advance
Create a macro and put your code in it. Set the macro to run when DI[x] turns on. The user alarm serverity has an effect on how this will work. For example if the severity 6 then the macro will not complete and an alarm will be posted to the TP. If the serveriy is 0 then the user alarm is posted and the macro completes.
I have been trying to implement following logicIF(DI[23]=ON),JMP LBL[1]
LBL[1]
UALM[1]But I am not able to display User alarm as it is showing INTP-443 INVALID ITEM FOR MIXED LOGIC.
Can you help me generate alarm for the above logic or if there is any other way to generate alarm, then please tell me.
Thanks in advance
![]()
BG logic does not support labels and jumps, and probably does not support UALM (not sure about the latter).
If you want to use case operator that you need to choise " if (<condition1>,<cond2>,...),...=...
Create a macro and put your code in it. Set the macro to run when DI[x] turns on. The user alarm serverity has an effect on how this will work. For example if the severity 6 then the macro will not complete and an alarm will be posted to the TP. If the serveriy is 0 then the user alarm is posted and the macro completes.
Thanks for your reply and forgive my ignorance but my robot is a welding robot and I want to continuously monitor a particular DI all the time as it is a safety signal but by creating macro I will only be able to check it when macro command executes.
I want to monitor that DI 24 hours and I am able to do it but I am not able to generate an alarm out of it so that person using pendant can also know about it otherwise PLC logic would have to be monitored every time this fault comes....
Is there any other way to do it ?
BG logic does not support labels and jumps, and probably does not support UALM (not sure about the latter).
Is there any other way to do it ?
Thanks Scotty for your omnidirectional reply
But would it work if TP is on ie robot is in teach mode also ? Because actually this DI will only get when robot TP is ON
SORRY I didn't share this info coz I didn't think it would matter.
Thanks guys for taking your time out to help me
Maybe you need use the KAREL??
sorry i'm not found UALM in Karel and in Saturday have no idea. But know in Karel here is in $UALM_MSG.
some like this u need? :
...//header
begin
while ( F[1] = true) do
delay(500)
if ( DIN[23] = true) then
RUN TASK(‘UALM_PRG’,1,FALSE,FALSE,1,STATUS)
endif
endwhile
//...
TP prog:
UALM_PRG