Posts by DaveP

    In the robot pendant, go to Menu, Setup, Host Comm, HTTP. In the HTTP Setup menu, highlight the A in the KAREL row then press the F3 button for UNLOCK. The A should change to a U. Try clicking on Comment again. I just tried it in Roboguide and it worked. I've done this for several real robots over the years.

    Try looking in the SNPX variables to see if there is an address that matches 4322. The example below shows 2 entries in the SNPX settings to send robot variables to the HMI. The 1st has an address of 1201 and the 2nd is address 9101. These "addresses" are robot addresses that external devices can map to to view/edit robot variables. You can look in the Teach pendant for the variable list or view the file in the MD directory in the robot.

    [*SYSTEM*]$SNPX_ASG Storage: CMOS Access: RW : ARRAY[80] OF SNPX_ASG_T

    Field: $SNPX_ASG[2].$ADDRESS Access: RW: SHORT = 1201

    Field: $SNPX_ASG[2].$SIZE Access: RW: SHORT = 1

    Field: $SNPX_ASG[2].$VAR_NAME Access: RW: STRING[37] = '$MCR.$GENOVERRIDE@1.1'

    Field: $SNPX_ASG[2].$MULTIPLY Access: RW: REAL = 1.000000e+00

    Field: $SNPX_ASG[9].$ADDRESS Access: RW: SHORT = 9101

    Field: $SNPX_ASG[9].$SIZE Access: RW: SHORT = 40

    Field: $SNPX_ASG[9].$VAR_NAME Access: RW: STRING[37] = '$TP_DEFPROG'

    Field: $SNPX_ASG[9].$MULTIPLY Access: RW: REAL = 1.000000e+00

    The E-Stop and Fence both have dual loop circuits for the wiring. This is the Chain 1 and Chain 2 for each circuit. The dual loops (Chains) have the redundant wiring for safety in case one Chain fails or the timing between the two Chains is not quick enough for opening and closing.

    E-Stop wiring

    Chain 1 is EES1 to EES11. Chain 2 is EES2 to EES21

    Fence wiring

    Chain 1 is EAS1 to EAS11 Chain 2 is EAS2 to EAS21


    i have check the contact connected on the chain 1 side(between EES 1 adn EES11, betwenn EAS1 and EAS11) is closed and a contact on the chain 2 side (between EES 2 adn EES21, betwenn EAS2 and EAS21)
    is open.

    The PDF file pg_0334.pdf from above shows the E-Stop and Fence wiring that you referenced. The contacts for EES1 to EES11 and EES2 to EES21 must close at the same time for the E-Stop to function correctly. Same for EAS1 to EAS11 and EAS2 to EAS21 in the Fence circuit. Chains 1 and 2 are for the dual loops in each circuit. When I said both contacts closing at the same time, I meant for the E-Stop contacts or the Fence contacts. Those circuits are separate. Your SRVO-230 alarm may be caused by something else like the deadman switch or something similar. See this link for an example. Srvo-230 Chain 1 abnormal 4,4

    First, you need to fix the issue of one contact closed and one open. They both need to close at the same time to prevent any faults.

    You can try doing a Shift Reset to see if the error goes away. Or press RES_1CH button on the Alarms page on the robot pendant. (Reset Single Channel Fault)

    More information

    My guess is that you connect BN to +24VDC, BU to 0VDC and V2- on the analog input card, WH to I2+ AND V2+ on the analog input card, then install a 250 ohm resistor between I2+ and V2- on the analog input card. You can connect the sensor to any of the 4 channels, replace the 2 with the desired channel number (0-3).

    I don't have any knowledge of the Maple HMI's, but this is how we do it with GE/Emerson Quickpanel+ HMI's. Create an OPC driver that points to the robot IP Address. We use the GE OPEN driver in the Quickpanels, the Maple HMI probably has something similar, specify the IP Address and use the default settings. The RB01_SR1 variable I/O Address points to the SNPX address that you set up in the robot.

    You can also move the Auto-T1 switch from the robot cabinet to a location near the operator. We run a multiconductor cable from the cabinet to the new location and mount the switch there.

    You can use a brute force method instead of an automatic method. Move to the PR in Frame #1, set Frame #2 to the active frame, touch up the PR without moving the robot. Set the active frame back to Frame #1 and repeat for the other PR's. You can create a TP with the PR's and the UFRAME instructions to make it a little easier but will still be manual.

    You can use the HMI option (SNPX) to send/receive real numbers to/from an HMI to the robot registers. You can do the same for position registers with this same option. Search this forum and you will find several threads.

    Check out this thread for using the pyModbus library for using Python and Modbus TCP to communicate between a robot and a PC. We have the HMI (SNPX) option in our robots that allows for Modbus TCP comm. Assuming you can also use the Modbus TCP option.

    Try using the DIV command to convert the Real number to an Integer. The DIV command is for Integer division and will return only the quotient. R[1] is Real, R[2] is new Integer. R[2]=R[1] DIV 1 This will divide R[1] by 1 and will set R[2] to the Integer value of R[1].

    try replacing the underscores with periods in your new code that Hermann suggested using. His code uses a . instead of a _ in the variable name for the extended axis. new_xyz.ext1 = org_xyz.ext1 + 10