Thank you, means a lot coming from the Kwakisaki
Posts by CoyBeard
-
-
Alright it's working
What I did was estimate the position of the part based on the timestamp of when the camera found the part and the imputed speed of the belt. With this information the third party program running the camera could send the pick position data ~1 second earlier from when the part would make that position. This gives the robot 1 second to move to that position to meet the part.
Once the robot meets the part I use the DRAW command and the ACCURACY command to get smooth motion constantly following the part using the mm/s parameter on the SPEED command. Then the robot picks the part and runs a simple palletizing program.
Here is a video:
But I can see clearly why you need an encoder setup for an industrial setting vs a speed input parameter..
No conveyor operates at a perfectly consistent speed without an encoder feedback. This can cause large differences in expected position over a distance. The closest I could get was +-25mm
So I just left a +-25mm tolerance for all the downstream processes and it works consistently enough for a proof of concept.
Thanks for the help! Another problem solved
-
I sending position data to the robot.. I'm used to XYZABC format. What does the OAT stand for in the XYZOAT format Kawasaki uses? and how do I specify the angle I need the tool along the Z axis? It seems like Axis 6 movement affects both the O and the T??
-
Those are good points. Thank you for the help! I'm going to mark this resolved.
-
Oh boy.. that sounds like a near impossible treasure hunt..
Maybe I can find a workaround: If I already know the speed of the conveyor it should be possible to write a program based off of that inputed speed. The part I'm stuck on is how to tell how long a motion command will take to achieve its position before executing it so I could get it to meet the moving part and follow it by constantly moving with the conveyor.
If I can just know how long it will take to achieve a motion command based off of current position, desired position, and speed, acceleration, and deceleration set %. I could achieve this without an encoder.
EDIT: According to the manual you can set a timeframe for the robot to complete a move simply by adding "s" to the end: "For a timed motion, enter the time value followed by an “s” (seconds)."
EX: "SPEED 8s sets the time to 8 seconds to complete the next motion."
I did some testing and for some reason in the real world it actually takes the robot about 162% of that time to achieve that motion.. No big deal, I can just multiply the desired time by 0.62 in the SPEED command and its all the same, just a bit strange that I have to do that..
I'm going to try to use this to get the robot to meet the part then sync the robot speed to the belt.
-
I successfully put together a test program : There is a PC program (rs232.pc), built off of kwakisaki 's, that's running along side a Robot Control Program(sndmtn). When the PC program receives a six axis point it sets a precision point and also sets a boolean variable to trigger the robot control program to run the point.
Since I'm a noob at programing old Kawasaki robots, there is probably a much better way to do this so I'm open to suggestions.
Thank you kwakisaki for all the help and resources
-
I have a Kawasaki FC006N, C80 I recently restored and am now trying to use for a project. I have a slow moving conveyor I need the robot to pick parts off of with a valve gripper. It needs to be on the moving part for up to a second for the gripper to get a good suction on the part to pick it. So I need the robot to move in sync with the conveyor. There was a tiny section on this in the C_Ops manual on page 1-13 where it sounds like I need an additional servo CPU:
"The 1GB board is the servo CPU. The standard 1GB board is equipped with two RISC processors that control six axes. The optional 1GB board is equipped with a third RISC processor to control a seventh robot axis and allow a conveyor input for line tracking. The 1GB board receives path data from the 1GA board, encoder data from the robot axes and conveyor, and current data from the current detect modules, to generate the PWM (pulse width modulation) signals that are sent to the IPMs (intelligent power modules) located on the power block."
Here is a picture of my C80 controller rack:
I can't find any detailed documentation on this as far as what's needed for hardware: Controller, Cable, and Encoder, and software: how to program in conveyor tracking..Please help..
-
I manually typed in the rs232.pc program, I got rid of the subroutine CALL and just typed the subroutine program in the main program for the sake of my ignorance in not knowing how to make a subroutine yet. And the controller is now talking to Hercules just as it was in your video! Thank you
I've attached the program that's working for me as a txt document:
Now its a matter of putting this in a motion program. I'll keep you posted..
-
I did the backups and reinitialization successfully '(File is attached)
I'm now able to edit programs! I'm going to attempt to use the ZSEND and ZRECIEVE here soon. For now here is the backup if you wanted to poke at it.
For confirmation I did the final steps of reassuring a proper reinitialization and confirmed Zeros, moved the robot around, and looked at the software version which looked good :
-
I might have messed up..
So I tried putting the program you attached in the same file as KCWin and sent "LOAD rcvdata.txt" to the controller over the PC Programing port and it errored out: The red error light on the controller was red and the controller was unresponsive until a reboot..
After the reboot everything worked as expected: The "Where" command worked and the "list/P" command worked. So I tried to manually type in the program instead by sending "EDIT newprogramname". Then I got a CPU error (-1100)!! The controller completely froze up with the red error light until I rebooted the controller. The same thig occurs every time I try to write data in any sort of way, though I tried reloading the host coms file again to see if that works and it seemed to load fine. Reading data seems to be fine as I can edit an existing program up until I change something then the error occurs:
-
Thanks for the help enabling HOSTCOM btw . When I launch Hercules in the serial tab on the computer which is connected to the second port on the controller, the correct COM port selected according to device manager (COM6), 9600 Baud, Data size of 8, Parity: None, Handshake: OFF, Mode: Free, when I click Open it returns "Serial port COM6 opened" in all green. That makes me believe Hercules is properly connected to HOST COM...
As seen in the image I have two programs loaded on the controller for communications testing. One for sending to the controller "pccomtest" and one for receiving from the controller "sndtst". Both I nearly copy pasted from the HOSTCOM manual you previously attached.
First thing I tried was:
- Connecting Hercules to the controller (green text)
- Executing pccomtest (through the pendant)
- In the top send box in Hercules sending: 196,553,390,-36,180,-82 (Which is a point proven solvable)
- but nothing happened, Hercules didn't return anything at all, and the robot program seemed to have paused at the RECEIVE command...
Second thing I tried was to receive from the controller:
- Connected Hercules to the controller (green text)
- Executed sndtst (through the pendant)
- but same thing happened.. Hercules didn't return anything and the program seemed to be stuck at the SEND command. But this time really stuck, I couldn't abort the program and even the ESop didn't work..
Here is what the terminal looked like when I loaded the file: (Looks fine to me)
I read in the manual: "When RECEIVE instruction is executed, the program does not proceed to the next step until the communication is complete" (same for the SEND instruction). So I assume this is a communication error?
-
I successfully set up the HOST COMMS option and I have the second port connected to my PC with Hercules installed. How should I establish a connection?
-
Thank you . I read through the document you attached, made a test program, and attempted to execute: it errors at step 3, the RECEIVE function, returning an error code (-896) which means according to the manuals: Option not set up, can't execute and it says to contact customer service.. Then I tried TERMON and TERMOFF with still the same error:
I shouldn't need more than an RS232 connection right? No special board in the controller, firmware? The manual does say (Option) in the title.
I would also advise to obtain hercules application.
You may be able to connect that to K-Roset in order to test the RS232 (although I have never tried it).
How exactly do I do this?
Thanks
-
So I have a Kawasaki FC006N I recently restored and an now trying to use for a project. What I need the robot to do is just follow motion commands sent over the RS232 connection at full program speeds. So using the DO command wouldn't work. I've installed and looked into K-Roset but it doesn't look like it will do what I need it to do without a license. Basically I have a program that interfaces with a camera and determines pick locations for parts based off of the camera and belt encoder and finds an intelligent/optimized place to stack the part on a pallet. So I figured its easier/possible to do this part with a different PC program and just have it send motion commands to the robot. Any Ideas? Thanks in advance
-
Long story short, the robot is moving! kwakisaki hooked me up with the correct firmware files for the Teach Pendant, thanks again!
The first two PCMCIA cards I used didn't work when uploading the firmware. This Card errored out with "Can't open file "TP_LOAD.CMD"". This card gave me a "Check Sum error". But the Nikon CompactFlash SanDisk EC-8CF 8MB SDCFB card (the same PCMCIA card cguenther used in his Kawasaki robot resurrection) worked perfectly! Seems like only some 8mb sized cards are compatible.
With the correct firmware installed on the pendant I was able to jog around the robot!
-
In your first video, @00:13 the TP is showing its Firmware upon boot. Unable to see it on Youtube, is it something like T01C0PEE ?
It Says: "TP_Version : version T34K2T5E 03/01/14 19:18"
-
I have the PCMCIA card and reader, what's next?
-
Alright, awesome, thanks
-
Looks like it's working . Did you still need a save all file or is the previous one i posted good enough? I could do another save all tonight if you need me to.
-
I'm unable to post a screenshot but, my screen looks exactly like yours except the only tabs I have are "smiles" and "settings". Settings only gives me the option to resolve the thread and watch the thread. Whenever I try to drag and drop files the reply turns blue saying "Drag and Drop Here to Upload" then green saying "Drop Now to upload" and looks like it will upload but nothing happens. I tried this with a txt and jpg. I used to have the attachments tab but I can't see it anymore..