I never used EtherCat to send positions. I dabbled a bit with FRI a couple years ago, it was a hassle for me, wasn't worth it. I use the SmartServo option that comes with the LBR iiwa, pretty handy and straight forwards. I send the positions via UDP or TCP/IP, not hard real time (iiwa is slower than other KRC4 robots) but quite responsive and smooth movement.
Hello,I am working with KUKA iiwa lbr 14 R820 robot. I am trying to jog the robot using the smartpad and getting the following error on my screen.
Error using ecat stack initialization [NetworkResponse() no Network Response]
(The safety error is also present that I mentioned in my previous post.)
Of course, you can't jog the robot when you're in AUTO mode. Turn the physical key on the SmartPad ,select T1 mode then turn it back.
The error message seems like you selected the wrong type of flange in your project configuration on Sunrise workbench or you didn't connect the data cable from the Controller to the robot Arm.
I am working with KUKA iiwa lbr 14 R820 robot. Currently, I am not able to jog the robot using the smartpad. I have attached the photo of the error that I am getting. I have started working on this robot very recently and so I am new to the system. Also, I am posting for the first time so excuse me if I have not followed the protocol.
You need to activate the security configuration each time you change it. You can do that on the smartPad, go to security, you'll find a button "activate" click and enter the password kuka provided.
Can you please tell me your experience with KUKA LBR iiwa.
I've worked on them for 5 years now, they're pretty awesome in many aspects: Safety, Torque sensing, Hand-guiding, ease of integration in non-industrial setups, you don't need to buy packages for every protocol, etc.Quote
how deep we must know the java programming?
To start you need to know some programming (Variables and Types, Conditionals, Loops, functions, etc) and Object Oriented programming (Classes, Objects, etc.). If you ever programmer before, it's not very hard to learn.Quote
When compared to normal KRC4 controller programming. how is the programming experience with KUKA LBR iiwa.
Each one has pros and cons, or let's say conveniences and inconveniences. From the top of my head, and as aforementioned, KRL is less verbose and you can change your code on the fly directly from the smartPad. You can't do that on the LBR iiwa, you need to change your code on the sunrise Workbench editor each time then synchronize. You can get around some of that by using process data or file exchange, to update some parameters, but not code (I think).
On Java you have tons of libraries available online (communication protocols, XML/JSON parsers, etc.), you have much less in KRL.
The bigger a program/project on KRL the clunkier it becomes. In java with some good package management, you can keep your project tidy.
Did you create your tool on the Object Templates Tab?
You need to create Tool manually, then in your program you initialize it and attach it to your TCP.
Post your java code so we can point you to what you're missing, otherwise like Panic mode said, we're just guessing from or previous experiences.
Can you post your program along with the RoboticsAPI.data.xml file? seems like you're trying to move a tool that you didn't attach to your TCP.
I usually use a "breakwhen" in my motion instruction, then check if "getFiredBreakConditionInfo()!= null" , to roll back to my previous position in case of an, obstacle, but not to release a trapped person, it's to avoid breaking my work-pieces, when I want to put them on a base and there's already something underneath.
As @SkyFire said, it's not safe to move automatically after a collision, as we have no way to know if it's not going to worsen the problem, especially with big robots.
The best way is to use a small Network hub, connect your PC + 2 Robots to the hub and set your PC's IP to something like 172.31.1.150 / 255.255.0.0 and be sure to have both robots use different IPs, because the default one is 172.31.1.147, and you'll have address conflict if you don't change your second robot's IP from the StationSetup--> Configuration-->IP
It's hard to tell from here. Can you upload your project?
Seems like you need KUKA's recovery stick to fix it the fastest way possible.
Instead of stopping or pausing your motion do this when you detect an obstacle:
The robot will freeze, like it a wait(). Once there's no force applied on the robot, you can get your override back to normal:
And the robot will resume.
Are you sure the robot is connected to the Sunrise Controller or you have the right Installation for your Arm? Because you seem to have errors everywhere.
I created a detailed library on github to control Robotiq grippers via Ethercat by LBR IIWA robots, either by robot programs or directly from the User Buttons on the SmartPad.
I use the 2 fingers grippers, but I think it would be the same for 3 fingers one, except the device's .XML description file. Otherwise, you have to change just few stuff.
1. I know that i need to create frames of current positions every several milliseconds but i don't know how to do it. Do i have to create another thread or i can do it in background task?
Use the DataRecorder class. It's detailed in the documentation
DataRecorder(String fileName, long timeout, TimeUnit timeUnit,int sampleRate)
Chapter 15.24.1 Creating an object for data recordingQuote
2. Should i do it by using arraylist and every next step frame have to be added to it?
Do you need the whole motion to be seamless and smoothed out or do you want in in batches?
3. Which is the best way to save frames? I tried OutputObjectStream but frame class doesn't implement "Serializable" interface so it is impossible and is it good to store data in txt file or better in other type?
I don't know for sure, but I always prefer to use Axes values, otherwise I use the DataRecorder's mathod addCurrentCartesianPosition-
Try installing the project configuration from "StationSetup.cat", before synchronizing the project.
And as the previous user said, be sure to use the same versions of Sunrise on the robot and PC.
RDC seems to conflict with the smartPAD, after establishing a connection, it'll disconnect after a few second, but if I disconnect the smartPAD, there's no problems.
I never had this problem. Once I'm connected via RDC I'm in.Quote
My main concern is that a proper shutdown is more than just a windows shutdown, like maybe the HMI program receives command to save tasks/file/configuration?
I'm not sure what it does under the hood, but I've done this hundreds of time and never had an issue. Just make sure to stop the robot or any program that's running.