Posts by Iprogram

    I have almost 20 years of automation experience with robotics and plcs. Is it time for me to start my own consulting and programming company? Or do I just keep working for someone else? Not in a good position to be without income for an extended time period. Anyone out there have any advice ?


    I am working on an R30iB plus controller with a Fanuc M20 that is using line tracking. The tracking is initiated when a part passes a photo eye. I want to move on the part and track it until it reaches its destination. the issue i am having is stopping the robot from tracking too far on the conveyor. Does anyone have any suggestions?

    Right now the robot is at a starting position and as soon as the photo eye is made i start a tracking program. but i am unsure of how to make a start and end point and stay inside that limits.


    Hello! I have a few Schmalz Electric Vacuum Grippers off a UR robot that were lightly used and wondering if anyone would want to purchase them? I have one that is setup to plug into the Wrist with the 8 pin connector and one that would have Discrete IO wired into it. Message me if interested i can get pictures and part numbers.

    I have done a few line tracking applications using a part detect switch(PhotoEye) where i used this input to initiate the tracking and also to set my enc Scale Factor. The next application i am working on will use vision tracking. Is there a way to not use a part detect photo eye and only use the vision process to initiate the tracking? if so can you also teach the scale factor using the vision?

    Thanks in advance!

    WCMON should be waiting for Semaphore[2]

    GETPART should be waiting for Semaphore[1]

    Maybe someone switched them? Either way The cycle start data needs to be written correctly and the sema will come true after this is completed and set by KAREL.

    Try to run the system from the SOP by setting it to OP panel Key in the config menu and use the teachpendant to select the Unit load to run. do this in the PalletSystem menu. Cycle start Control would be set to SOP and ect.

    Do a Serch for the PR to see if its used anywhere else. Can you share your code where you are forcing the NUT configuration?

    Should look like this:

    posn : XYZWPR

    conf :CONFIG

    --Write Configuration Data To PR[2] NUT 000









    SET_POS_REG (2, posn , STATUS,1)

    I have an application where the robot will pick up a flat piece of aluminum that is 24 inches by 36 inches from a bin. The robot needs to accurately know the location of the part in the gripper within 5mm. The bin is intentionally oversized by a margin greater than that. Vision isn't an option and the customer wants to use laser sensors looking down and have the robot move around to find the location. I am struggling with finding a good way to do this. I am testing using remote TCP option but it doesn't seem to work the way i want it to. Has anyone done something similar that they could give me some idea's?


    Hmm Seems like i have done this using the System Variables Have you Checked:


    I think you might have to set: SCR$GRP[1]$M_POS_ENB TO True and there is another one close to there that you set to true to use the above feature.

    Sorry doing this from memory so might not be correct.

    Unfortunately i am not to familiar with that model and not sure if it is an RJ or RJ2 controller. Do you happen to know which one it is? But in short google fanuc KAREL manual and that will be helpful or you can use Teach Pendant Programming (point to point) depending on your experience level.

    I tried this first and Unfortunately the program is write protected and will not allow this. i can set the output anywhere in the program before the call but i wanted to make it easier to maintain.

    I have a system where i am using the Menu Utility option to display an operator message and waiting for a Yes or No Response. is there a variable that i can monitor to know when the Pop Up Is being displayed? I want to set an audible alarm when the Teach pendant is waiting for an operator response.


    This also can't work. There is missing a "'". 😉.

    For the x thing: you have to create a string where the 'x' is replaced by the ascii representation of the actual value of x. Then use this string in the function GET_VAR().

    LOL you got me on the ''

    That worked Thank you!