Merging modern software development with electrons and metal
Random header image... Refresh for more!

Category — CANOpen Adventures

Review: Embedded Networking with CAN and CANOpen

Embedded Networking with CAN and CANOpen by Pfeiffer, Ayre, and Keydel, RTC Group /Annabooks, 2003.

Summary: 8.5/10, highly recommended.

The book covers the CANOpen basics well. It helps that I’m already familiar with basic CAN and CANOpen concepts (SDO, PDO, Object Dictionary, etc), but the explanations are clear, and the authors do provide concrete examples, which always helps.

The book does go into some low level details, such as CANOpen message formats. That’s good knowledge to have – I’ve never regretted learning about computing at the bit level. If you need really detailed information about CAN, then you will need another book.

The final part of the book is a CANOpen summary. I expect to be using this section quite a bit as I continue experimenting with CANOpen.

I don’t have real complaints about the book. I do wish, however, for a complimentary book specifically about CANOpen in factory automation. For example, this book does not cover DS402 (drive profile) at all.

Tony

February 21, 2008   No Comments

Fieldbus Book Wars

One way of judging programming language popularity is to compare book sales. So I decided to do something similar – see how many books in Amazon.com had the names of popular fieldbuses in their title. I excluded non-English books (German Profibus users get more choices) and standards documents.

Fieldbus In Print Out Of Print Total
CANOpen 0 2 2
Profibus 2 1 3
Profinet 1 0 1
Foundation Fieldbus 1 2 3
Devicenet 0 0 0
Ethernet/IP 0 0 0
EtherCAT 0 0 0
Ethernet PowerLink 0 0 0
Modbus 0 0 0
Modbus/TCP 0 0 0
CC-Link 0 0 0

I wouldn’t choose a fieldbus on the basis of books; for example, many of the fieldbuses have good information available on the web. But it’s interesting to look at the book titles and year of publication:

Apparently fieldbus books do sell: several recent books are already out of print (or otherwise unavailable).

Tony

February 20, 2008   2 Comments

CANOpen Annoyances – I

Updated 12/14/2007 with more vendors

It’s obvious I like CANOpen, but it does have its downside. Areas that could be much improved include:

  • Too many connector types. OK, I can see a need for more than one connector type. But 20 types? Powering isolated CANOpen transceivers is not consistent either – I am going to design and build some interface boards to make it easier. Just giving examples from my favorite vendors:
    • My CANOpen interfaces both have DB9M CAN connectors, but do not provide any power. (The PEAK dongle can be easily modified to provide +5VDC on pin 1 and/or pin 9).
    • The DB9M connector seems standard for CAN interfaces – Kvaser, Ixxat, Softing, Peak, and Gridconnect all use it. The Ixxat USB/CAN interface has RJ-45 connectors, with RJ45/DB9 adapter.
    • The AMC DX15 uses a DB9M connector, and requires 7.5-13VDC on pin 9.
    • The Wago 750-337 has a removable screw terminal connector, and its isolated CAN transceiver is powered internally. (The 750-338 has a DB9 connector).
    • Copley Accelnet Panel drives (ACP-xxx-xx) use RJ-45 CAN connectors, and look like they need +5VDC on pin 8.
    • Copley Accelnet Micro Panel drives (ACJ-xxx-xx) use Samtec 10-pin crimp and poke connectors, and need power on pins 1 and 6.
    • IMS CANOpen MDrives (stepper motor + drive) use either DB9 or 5-pin micro (M12F) connectors, and look like they require 7-30VDC on pin 9.
    • Elmo’s Cello and Harmonica drives use a RJ-45 connector, are isolated, but don’t require external power.
    • Kollmorgen S200 Series uses 5-pin removable terminal block.
    • Technosoft IDM680 uses DB9M, and needs +24V.
    • Technosoft IDM240 and IDM640 uses what looks like a RJ-11 connector.
    • Faulhaber MCDC3003C and MCDC3006C drives use DB9M with no power.
    • Maxon EPOS uses a 4-pin Molex Micro-Fit connector, no power, and a Molex to DB9M cable available.
  • Raw CANOpen is pretty primitive – certainly not a good basis for rapid development. This is a bit better than I thought.
    • Copley’s CMO (ActiveX) is free for use with their drives. CML has a license fee which is reasonable. Both are higher level interfaces, and would make working with a Copley and Wago only system easier. However, as far as I can tell, the libraries only work with Copley drives and Wago I/O modules, so if you need to mix and match, it won’t work.
    • Elmo’s Maestro Multi-Axis Supervisor and Composer software look interesting (might make CANOpen development much quicker), but I’m pretty sure they only work with Elmo’s drives.
  • Software needs much more standardization – what works with what is still too restricted. To give some examples:
    • IMS requires Peak CAN interfaces (resold as the MD-CC500) to download firmware updates.
    • Copley’s CMO and CML software only supports interfaces from Copley, Ixxat, Kvaser, NI, and Vector, and only supports Wago I/O.
    • Elmo’s Interlude software supports Ixxat, Softing, and Kvaser.
    • AMC’s Driveware configuration and setup software works with CAN interfaces from Advantech, Ixxat, Kvaser, Vector, and ESD.
    • Faulhaber’s Motion Manager software only supports Ixxat.
    • Maxon supports Ixxat, Vector, and NI.
    • Wago appears to supply no software, just the EDS files.
  • Most CAN interfaces do not include CANOpen software – it’s either not available or is yet another cost (Kvaser was the exception IIRC). Softing includes a free CANOpen API (LeanCANOpen).

So if you need to mix and match (one of CANOpen biggest advantages), you are going to have fun. Think about a system needing a high power AMC drive, some Copley Accelnet drives, and some IMS MDrives. You’d need a Peak CAN interface to update the MDrives, but a Ixxat, Kvaser, or Vector interface to setup the AMC and Copley drives. You’d have to use different GUI software to setup the AMC and Copley drives. And you could drive using Copley’s higher level CMO or CML libraries with AMC and IMS, but there’s no guarantee that they will work (and I’m pretty sure no support). You would have to deal with different connectors (DB-9, RJ45) and different, incompatible voltages to power the CAN bus.

Tony

September 12, 2007   No Comments

Why use a standard such as CANOpen?

What is the big advantage to using an open standard such as CANOpen? In a word, interoperability. You should be able to mix and match CANOpen products from many different vendors. This has many benefits such as:

  1. Reduced dependence on any one vendor. If a vendor goes bankrupt, stops making a product line, or increases its prices, it’s much easier to replace it with a similar product based on the same standard. For example, an AMC drive is not a drop in replacement for a Copley, but it’s a lot easier to swap them than, say, replace MEI PC/DSP motion controller with a Galil machine controller.
  2. Much wider range of products available. For example, many proprietary distributed drive manufacturers do not sell I/O. Or they only sell low current or low voltage drives.

Of course, not everything is perfect. There are not CANOpen products for every need. Combining CANOpen products is not as easy it should be. I will write about specific examples later.

Tony

August 22, 2007   No Comments

CANOpen Surplus Goodness

My CANOpen devices

Well, it’s not all surplus, but most of the system was bought surplus. I will be writing about my experiences learning how to use CANOpen.

The lineup:

Tony

August 10, 2007   No Comments