Keyence IV series are just a vision sensors which gives you signal TRUE or FALSE. From robot's point of view it is the same as proxy switch. You need a software from Keyence to setup a condition when sensor returns True on its output. Because it is smarter device you may have multiple conditions and request sensor to change them almost on the fly, but at the end it will give you just TRUE or FALSE.
Posts by mil3k
My friend, without proper training on Staubli robots from your local supplier don't even try to work on them, if you don't want to finish as nervous wreck. I just went through hard way, because the project manager who run a project with Staubli robots cancel my training without telling me that. The programming approach to these robots is completely different then "big 4" and your Fanuc experience will be even a disadvantage rather than an advantage.
This was the code I used but it showed invalid task name
Did you create sFilling global variable before you tried to use it? It should find it in Application's Data tab inside string variables branch.
2) Job's group set is not a robot, base, or station. Set to a non-group job.
Ok. The active program I open to check this command was the master program, standard, robot job but without any moves. I checked other program with moves and CNVRT is there.
I used convert few times, mostly to convert interruption position from pulse to different UF, but never used to change TL#
If you use Pvariables you can use the CNVRT command to change the tool inside the Pvariables.
we use this trick in the cobot series to use the correct tool with weight for not generating collisions.
I just discovered that CNVRT is missing from arith menu on one of my controllers. Interesting. I thought that it is one of default instructions on every controller.
Potis, how do you do tool change?
CNVRT PX000 PX000 TF TL#ToolNumber or CNVRT PX000 PX000 TL#ToolNumber ?
One of easiest way is to use Intereference Cubes and monitoring external outputs allocated to each cube. If your system is in master/slave configuration with one controller for both robots they share the same pool of cubes. If the setup is with two independent controllers you can do it with coupling device to connect cube inputs of one with corresponding outputs of the other ans vice versa.
Use of PLC, as Robodoc suggested, gives you an opportunity to use TCP tracking function which send tool coordinated to the output and PLC can track it in almost real time.
As one of my colleagues says: "It's many ways to skin the cat".
Does the license work across a virtual machine?
I didn't try it that way. I may try it in few weeks after finish the project and have spare time before next one kick off.
Thank you for your explanation. Since my original post I had support from Staubli application engineer and he explained me how to use MoveId to do recovery.
I'm asking for an advice how to do recovery routine "Staubli approved way".
At the moment I was going to do it the same way as I did it on ABB robot, by remembering a unique number for my last passed position and during recovery find it and step back number by number until the robot be at home. When I start typing these uniqie number I realized that Staubli robots run move instructions and other instructions separately and I need to use WaitEndMove, when I want to synchronize them.Code
// Move to tab position movej(jSafePickTab,tTabTool,mTravelSlow) nRecoveryPos=10001 movej(appro(pPickTab,trAbovePickTab),tTabTool,mTravelSlow) nRecoveryPos=10002 movel(pPickTab,tTabTool,mPickSlow) nRecoveryPos=10003 waitEndMove()
My question is: In above example, will the controller update nRecoveryPos variable after robot robot actually pass the point or it will do it instantaneously even before robot pass the first point,
So before jSafePickTab will be reached the nRecoveryPos will be 10003 instead of 10001?
When you've installed the motosim there was a file "motosim egvrc delete".
Close the motosim, execute the file and open the motosim again
Thank you for suggestiion.
Solution: Run installation and choose the Repair option on the screen, were you are asked for choosing the type of installation you want.
Can you send your CMOS.bin, i can check in my Motosim software too.
I don't think it is related to CMOS, as I can't open any of my existing cells.
Last time, when I had this type of message, it was triggered by wrong settings CV-X Keyence camera. I followed the manual and there was a wrong value to type to the controller. This cause a LAN port to crash the whole system and reboot TP. But it was completely different scenario.
Have you tried to reboot the controller from within MotoSim?
Did Windows update occur recently?
Yes, I reboot few times to maintenance and online.
Windows 10 update history show at least two updates since I last used Motosim.
This morning I tried to open in Motosim one of my working cells and has been welcomed with below screen:
Unfortunately, it happened to every cell I tried to open, even with new ones just after insert a controller.
My Motosim version if that helps:
0000,MotoSimEG-VRC ver 2021
*** MOTOSIM EG-VRC ***
--- SYSTEM ---
Does any body know what could trigger such a problem? I tried online and offline with LAN adapters on and off, etc. no change. Still the same message.
Go to the motoman webpage, motoman.com/documentation , and find there below manuals.
First one will help to understand internal relays and the second one will explain where to find terminals.
165294-1CD - Concurrent I/O
165292-1CD - Controller Installation and Operation
"ERROR 0722: It is already registered for Variable name"
Double check, if you don't use the same name for input and output variable.
Psyril, thank you for the answer. I was sure that there must be a xml file where I could rename I/Os, but I didn't know which one and stopped before mess up something which I shouldn't. Does it work the same with Profinet I/Os? That could save me a lot of time transferring I/O names between machines.
Do you use a CS9 or CS8C controller?
If CS9, did you create an EtherCat Master at J206? What´s your slave
Yes I have Master with 8 input slave card and 8 output slave card. Hardware side is set correctly.
Ok. I understand. I was looking for comparison 3d environments.
I use Ethercat I/O coupling to control end effector. At the moment I can see I/Os as ChannelNo.Output and ChannelNo.Input. Is there any way to change "ChannelNo" into something more human friendly?
C:\Users\Public\Documents\MOTOMAN\MotoSimEG-VRC\Cells\Test rig\YRC1000\Storage Card
"Test rig" in my example is the name of a cell. In your case it will be different. YRC100 is my robot, could be DX100, DX200 etc. in your case. Storage Card is the folder which is visible on the virtual TP as "Folder" where you will save/load files from/to the cell. If you have multiple robots with one controller all programs will be in the same Storage Card folder.
To compare different cells, concurrent work on different cells, etc.