How to detect when robot program is changed?
Hi everyone.
I want to use PC SDK to write a C# application that can monitor and raise notification when Robot program is changed (not Robot data, just code).
I am developing an app and use the below method to detect program change:
-Create a backup after a time interval (now I set interval=5minutes)
-Seperate robot code and robot data then write them to 2 text files
-Generate MD5 code for the Code text file
-Compare MD5, if program is changed, MD5 code will change.
My company has many robots.
I want to use PC SDK to write a C# application that can monitor and raise notification when Robot program is changed (not Robot data, just code).
I am developing an app and use the below method to detect program change:
-Create a backup after a time interval (now I set interval=5minutes)
-Seperate robot code and robot data then write them to 2 text files
-Generate MD5 code for the Code text file
-Compare MD5, if program is changed, MD5 code will change.
My company has many robots.
Most of them need only 4s for creating backup. But some of them need much longer (40s, 100s, 3min...).
And some of those robots (that need long backup time) encountered error when my application runs. The Flex pendant and IRC5 compact controller were suspended
And some of those robots (that need long backup time) encountered error when my application runs. The Flex pendant and IRC5 compact controller were suspended
and sometimes auto restarted.
I replace a new memory card but that didn't help, they still need longtime to backup and transfer backup from controller to PC.
So what can be reason for this problem? Is there any other simpler solution to detect when program is changed.
Please give me some advices if you know. Thank you .
Please give me some advices if you know. Thank you .
0
Best Answer
-
Hallo,instead of comparing the code, you might load down the event log from the controller and search for a entry like "a module has been modified " etc. A kind of this message is generated no matter if the code is changed via RSO or FP.Also, there is a function ModTimeDnum, which gives the time when a modul has changed.You would have to integrate that in a routine, running on each controller, maybe with an automatic start on each power up etc. (I never used this)0
Answers
-
Thank you matti for your advice
Nice to hear this solution, I will try this tomorrow and update testing result.0 -
matti said:Hallo,instead of comparing the code, you might load down the event log from the controller and search for a entry like "a module has been modified " etc. A kind of this message is generated no matter if the code is changed via RSO or FP.Also, there is a function ModTimeDnum, which gives the time when a modul has changed.You would have to integrate that in a routine, running on each controller, maybe with an automatic start on each power up etc. (I never used this)
I encountered a problem when applying your advice.
I tried editting RAPID program on 2 robots.
One generated an event log like what you mentioned (Robotware is 6.05). But the other didn't generate any event log (Robotware is 6.04)
Do you know the reason? Thank you.0 -
Hallo,So far as I know you cannot dectivate logging and user log is a basic function and always there.Maybe you ask your ABB representative (or update to 6.05?)0
-
thank you, I will try. That robot still logs many things but not log when module is changed0
Categories
- All Categories
- 5.5K RobotStudio
- 396 UpFeed
- 18 Tutorials
- 13 RobotApps
- 297 PowerPacs
- 405 RobotStudio S4
- 1.8K Developer Tools
- 250 ScreenMaker
- 2.8K Robot Controller
- 316 IRC5
- 61 OmniCore
- 7 RCS (Realistic Controller Simulation)
- 800 RAPID Programming
- AppStudio
- 3 RobotStudio AR Viewer
- 18 Wizard Easy Programming
- 105 Collaborative Robots
- 5 Job listings