Fanuc G12.1

0 views
Skip to first unread message

Saundra Balock

unread,
Aug 4, 2024, 1:38:45 PM8/4/24
to lastaiproval
Im coming from an almost pure Kuka background but will have to do some work with Fanuc in the future. What would be the main diffrences? Stuff thats good to know? Where do you find relevant programming manuals? Are Fanucs as open as Kuka to modification? Options, what are the most common? How do they compare to kuka? What hardware is used for i/o? Have anyone else gone the same way, and what is your experience? IDE for programming, what is commonly used? Are fanucs big or little endian? Datatypes any special quirks? General program structure for fanucs?

I will take a programming course within some weeks. But still would like if anyone has gone the same route or has any opinions. I'm guessing I would very much like someone to explain the details and diffrences between fanuc and kuka from a kuka programmers point of view.


Backups only output the compiled binary version of programs -- if you want human-readable source code, you have to also do the ASCII Backup step, or do an MD backup, which is not under the normal Backup menu.


Fanuc has two completely different programming languages, TP and KAREL. KAREL requires the robot to have the KAREL option installed, and KAREL programs must be compiled offline using RoboGuide before they can be loaded into the robot. And there is no ASCII backup for KAREL programs. TP generally lacks many functions, like Bitwise math, or Trig functions, that you're accustomed to having in KRL (unless you buy certain options). There are some things, like TCP/IP socket comms, that can only be done using KAREL, but you can't program KAREL without RoboGuide, which is the only "IDE" for Fanucs, and very $$$$$.


Background Logic (BGL) uses basic TP language, though with some extra restrictions, and loop inherently. They also need to have some small WAIT commands to prevent them from running wild and consuming too much system resources. Aside from that, they're much like KUKA SPSs.


I/O isn't conceptually different from KUKA, but the setup is much different. Fanuc uses a Rack/Slot concept, where each Rack is a different I/O "bus" type (ProfiNet, Ethernet/IP, etc), and each Slot is a different device.


I/O hardware varies -- Fanuc has their own I/O modules, but these days, you'll most often just run Ethernet to Ethernet/IP or ProfiNet, OPC/UA or ModBus-TCP devices (like KUKA, each of these requires the correct Fanuc software option).


Fanuc have nicer remote-access tools built into the robot then KUKA -- just plug in an ethernet cable, and point a web browser at the robot's IP address. Makes adding comments to Registers and Signals much easier, as well as irVision and other Fanuc options.


Fanucs are less 'hackable' than KUKAs, overall, and Fanuc charges for every tiny option that most other brands give you for free. They also treat even their basic manuals like state secrets. You'll want to sign up for a user account on Fanuc's website, which will allow you to download manuals (with your name watermarked on every page, to prevent you from sharing the files).


Pendant programming is much more menu-driven. TP syntax is quite different from KRL, but not hard to figure out. Motion commands are still Joint or Linear, with a Point, Speed, Fine/Continuous, and some extra options like UTool/UFrame offsets, Vision offsets, setting outputs or calling Macros on the fly, etc. Points are firmly linked to specific UTool/UFrame, and will throw a fault if you try to TouchUp on them with a different UT/UF active. Fanucs use WPR (X rotation, Y rotation, Z rotation) where KUKAs use ABC (Z, Y', X"), and a set of CONF variables where KUKAs use S&T.


Datatypes are limited. Registers contain any numeric value, and Position Registers contain either Cartesian or Joint (think E6POS and E6AXIS) values. PRs can be switched between these types by changing their Representation setting. There's also some String Registers, and Vision Registers (if a irVision option is installed).


First of all thanks for the response. Alot of stuff seems daunting like the limited "hackability" and the 2 diffrent programming languages (can these be mixed or is it either or?) Like i guessed this is a can of worms that creates more and more questions. But the summary provided gives the main pointers i was looking for. I've signed up for a fanuc account, any good pointers what a good place to start digging would be? Like kuka i would get to start with: kss syntax 8.x, system integrators manual, system variables 8.x as a bare minimum and go cover to cover. What is the equivalent with Fanuc?


I've signed up for a fanuc account, any good pointers what a good place to start digging would be? Like kuka i would get to start with: kss syntax 8.x, system integrators manual, system variables 8.x as a bare minimum and go cover to cover. What is the equivalent with Fanuc?


Well, they can coexist, but "combine" is a bit strong, I think? TP programs can call KAREL programs (often used by, for example, GM to keep their standardized logic hidden in unreadable, uneditable KAREL programs, while still leaving room for people to write and edit TP programs.


Also, control of robot motion from inside KAREL is pretty heavily deprecated these days, so KAREL appears to be being relegated to use for tasks that TP can't support, but TP gets primary "custody" of motion programming.

3a8082e126
Reply all
Reply to author
Forward
0 new messages