Standard ftp, you want the directory: /md:\ in the robot. /md:\ is how I have it in WinSCP, something like Filezilla may be something like /md or some variation.
Anonymous login is fine, no encryption, port 21
Standard ftp, you want the directory: /md:\ in the robot. /md:\ is how I have it in WinSCP, something like Filezilla may be something like /md or some variation.
Anonymous login is fine, no encryption, port 21
Are you running through a PLC? You should be able to latch the signal on for a few seconds in the PLC.
Maybe it isn't possible in your situation due to complexity, but we make our robots able to home from anywhere to include places that the robot shouldn't ever be. Our homing routines can be some of the most time consuming programs to setup when the cell goes live. It's a pain, but in the end an operator can just press the home button on the HMI and get on with their day.
I agree with TitusLepic, reteach your user frame. There is another option you can do, but it's not as relevant as reteaching your user frame. You can do a program adjust. Menu > Utilities > Prog adj. This is a useful tool, but I would advise taking a backup 1st. One wrong setting using program adjust and you can throw things off in the wrong direction.
Check PR 11. It sounds like someone cleared it. If it is showing an "*" than you just need to shift touchup and reset the position data to what you need. If it shows an "R" than it is still initialized and I can't think off hand what it would be.
We don't use Karel at all, only TPP. We realize we may be losing some functionality, but the advantage is that when there is a problem on the shop floor we can go out and fix it straight from the pendant. We have cells made by outside vendors that use Karel. The difference in time to troubleshoot and correct problems can be quite substantial.
If you don't have access to the Ethernet/IP menu under I/O it means that the option isn't installed in the robot
When you look at your PRs, does PR[1] have an * or an R next to it? If it has an * then just shift record on it to initialize it, then go into position and reset all the values to zeros.
I'm not familiar with R-J3iB specifically, but iIf it is for only one, or a few positions I would set up a reference position. You can tie a DO directly to a reference position.
Have you tried making a point with a tool offset? I think if you went to your point then had another point with the same point number that has a tool offset I think it would do what you are looking for.
I think you are looking for something like this. This person on github did a project that is licensed MIT. His code matches his SNPX_ASG instead of being portable, but that shouldn't matter for DI/DO. Specifically, the decode_bit function in robot_comm.py is what you would want to call to monitor the DO. You do need the HMI option for this.
You can monitor I/O with a python script using pyModbusTCP, or you can use socket messaging with SRTP. I believe you need the HMI option on the robot.
You can monitor a DO for it. Make sure you have an available DO mapped and go into MENU > NEXT > SYSTEM > CONFIG and put a value in "Signal if OVERRIDE = 100".
I haven't done it with EIP, but I've done it with both Modbus TCP and SRTP. Both are pretty easy and may be worth it to check out. Put what you want to send into SNPX_ASG in the robot and do whatever you want with it in the PC. I'm not sure exactly what need it fills, but we have to have the HMI option. I think the option enables either modbus communication or snpx.
Looks like you are using CNT0, try upping those. CNT0 moves are pretty close to fine moves so the robot is going to be accelerating and decelerating a lot between each move, if the points are close together it won't have the opportunity to move fast. If you don't need the accuracy a CNT100 move is going to be much faster. Usually I use CNT100 for open air moves and like 1 move before a fine move for a pick I'll switch to somewhere around CNT10. But if you need accuracy to get into tight spots or to avoid things you'll need to keep your CNT value low.
I've used this before, but I think it's unsigned. You may be able to modify it to ignore the last bit and sign it yourself
R[1] = (high byte * 65535) + low byte
Set $IO_AUTO_CFG to FALSE
Menu > Next > System > Variables > $IO_AUTO_CFG
You can do a circular or circle arc move (may depend on the software version). It's another type of motion like linear or joint.
We used to run into that on occasion. If I'm remembering right, I think it was happening only with PR[1] for us and may have had something to do with PR[1] specifically. It was something that only happened a couple times a year.
I don't see any way you could. We use Python scripts that get called by task scheduler on an IPC every day. You could probably write a script that monitors an output to trigger a similar script.