CANOpen Monitoring and Power Board

CO-RJ45-PWR
I created the CO-RJ45-PWR so that I can easily monitor my RJ45 CANOpen network and, if needed, provide power to CAN_V+.
My Trac site has the details, and this post has the background information.
Since all of my other adapters provide CAN_V+ connections, I doubt I’ll use that capability often. I’ve already used the board several times to investigate CAN buses.
I used this board to try out Phoenix Contact’s PST/PT series of removable terminal blocks. The main reason I used them is the pin-strip header makes a great connecting post for grabber-type oscilloscope probes – but if you want to use discrete wires, just plug in the screw terminal socket.
The PT terminal block sockets are very affordable, and some models, including the one I choose, can be mounted in three different positions.
On the down side, the polarized pin-strip isn’t readily available (so be careful when plugging the socket into the header) and the socket is only available with screw terminals (I prefer spring clamp).
March 29, 2012 No Comments
CANOpen Terminal Block to 2xRJ45 Adapter Board

CO-TB-RJ45
The CO-TB-RJ45 connects a terminal block to 2 RJ45 jacks, with optional, flexible connection to CAN_V+.
My Trac site has the details, and this post has the background information.
I created this board so I could connect anything to my RJ45 CANOpen network. Since I’ve always liked the flexibility of removable terminal blocks, I used them for both the CAN and V+ terminals.
March 27, 2012 No Comments
CANOpen M12 To 2xRJ45 Adapter Board

CO-M12-RJ45 connected to a Festo CPV10-GE-CO-8
The CO-M12-RJ45 converts a standard CANOpen M12 device connector to 2 RJ45 jacks, with an optional, flexible connection to CAN_V+.
My Trac site has the details, and this post has the background information.
I created this board to make it easy to connect my Festo CPV10-GE-CO-8 and my Norgren VM10 pneumatic manifolds to my RJ45 CANOpen network. These manifolds use a 5-pin M12 circular plug connector with type-A polarization for the CANOpen connection. They do not require power on CAN_V+, but I included connections to CAN_V+ in my design in case I need it in the future.
So far I’ve discovered one big issue with the board: the connector is a bulkhead connector. It needs a panel with the proper sized cut-out to mount the socket’s threaded nut which fits on to M12 plug’s threads. The picture above shows the missing locking nut on the board while the power cable’s locking nut is clearly visible on the right.
As far as I can tell, all the right angle PCB M12 socket connectors have the same issue. Right now I’m just letting the M12 socket rest in the M12 plug, but that’s not very secure. If I need a secure setup, I’ll try to rig up some kind of a hack to hold the nut to the board.
March 22, 2012 No Comments
CANOpen Terminal Block Header to 2xRJ45 Adapter Board
The CO-HDR-RJ45 converts a standard CANOpen 5.08mm terminal block header to 2 RJ45 jacks, with optional, flexible connection to CAN_V+.
My Trac site has the details, and this post has the background information.
I created this board to make it easy to connect my Wago 750-337 and Beckhoff BK5150 CANOpen K-bus interfaces to my RJ45 CANOpen network. These interfaces use a 5-pin 5.08 mm terminal block header for the CANOpen connection. They do not require power on CAN_V+, but I included connections to CAN_V+ in my design in case I need it in the future.
So far I’ve discovered one minor issue with the board: the Phoenix Contact inverted header I used does not perfectly fit the Wago header used by the 750-337. I had to break off one tab; if you look at the picture above, you can see that the top Phoenix tab does not line up with the cut-out for the top tab.
I typically use Phoenix Contact terminal blocks over Wago because they are much more readily available from my favorite catalog distributors, Mouser and Digikey.
I also have a Wago 750-338 interface which uses a DB9M connector, but based on my eBay monitoring, I’d say the terminal block models, such as the 750-337, are substantially more popular. If I were buying new, I would use the 750-338 instead of the 750-337 (since I prefer cables over terminal blocks), or more likely the 750-838 (PLC version of the 750-338) since I’ve found that programmable logic + distributed I/O is a great combination.
March 20, 2012 No Comments
CANOpen DB9M to 2xRJ45 Adapter
The CO-DB9-RJ45-2 converts a standard CANOpen DB9M connector to 2 RJ45 jacks, with optional, flexible connection to CAN_V+.
My Trac site has the details, and this post has the background information.
The AMC drive pictured is the reason why this board exists: I have a bunch of DX15C08s and a couple DX60C08′s and wanted to get them running, but they require 9->13VDC on the CAN_V+ line. So I created this adapter to solve that problem with its CAN_V+ connection, and added the RJ45′s because it’s so much easier than trying to daisy-chain DB9s. (I did think about staying withDB9s).
The design is called the -2, because I have a CO-DB9-RJ45-1 mostly designed, which uses ultra low profile RJ45 jacks in a DB9/DB25 gender changer backshell with 2.5mm terminal blocks. The board shape is complicated, and I haven’t had the PCB made yet.
This board shows how it’s hard to get everything right the first time: I put the TB1 terminal block header on the wrong side for the DX15C08 servo drives. Look at the picture and you can see the HD44 cable is right next to the terminal block.
My solution was to replace the pluggable terminal block with a compatible fixed terminal block that doesn’t extend past the PCB board. That works, but it’s still a tight squeeze.
The board is shown with my RJ45 terminator, which is pretty slick and affordable (~$2). I’ll try to document the terminator sometime soon.
March 15, 2012 No Comments
My CANOpen Adapters
I’ve finally create Trac pages for my CANOpen adapters. I will be highlighting each adapter in a blog post, starting with the CO-DB9-RJ45-2.
I created these adapters for two reasons:
- I’ve standardized on RJ45 cables for my CANOpen networks, because daisy-chained RJ45 cables are cheap, simple, and work well. However, many of my CANOpen devices do not use RJ45′s, so I created adapter boards from their connectors to dual RJ45 jacks that are perfect for daisy chaining.
- Some devices require power on CAN_V+ to power their CAN line drivers. Unfortunately, most CAN interfaces do not provide any power, or any way to get power, to the CAN_V+ wire. Also, I need to provide incompatible voltages to different devices. So I added flexible connections for CAN_V+ to my boards.
After using the boards, I’ve found a couple things that could be improved; the details will be covered in the board’s blog post.
Most of the boards use a similar setup for CAN_V+:
- CAN_V+ from the power terminal block (TB1) is always connected to the device’s connector.
- CAN_V+ from TB1 can be connected to the right and/or left RJ45 jack using jumpers.
This setup gives a lot of flexibility: you can power each device that needs CAN_V+ individually, you can power part of the network (left or right), you can power the whole network (left and right), or you can have separate power domains (by not connecting one or both of the jumpers).
If you start doing fancy stuff (such as different CAN_V+ voltages on different network segments), be careful. For example, if you have an AMC DX15 segment (+12V) and a Baldor e100 segment (+24V), and accidentally move the AMC to the Baldor segment, you will fry the AMC’s CAN line drivers.
The CO_RJ45_PWR board is a little different, since it’s in-line. Basically, CAN_V+ from the incoming RJ45 jack (J1) is always connected to the 8-position terminal block (P1), and CAN_V+ from the power terminal block (TB1) can be connected to J1 or J2 (outgoing RJ45 jack) using jumpers.
I had the PCBs made at Gold Phoenix, which is a good choice if you need several boards each of different types. There are many other good PCB fabs. I am not providing my Gerber files, since different PCB manufacturers may require different formats (units, resolution etc); there are plenty of resources on how to create Gerbers from Eagle on the internet. If you can’t figure it out, you can always use a PCB fab house that takes Eagle PCB files directly.
Update 3/31/2012: Here are links to the different boards.
- The CO-DB9-RJ45-2 converts a DB9M CANOpen connector to dual RJ45 jacks.
- The CO-HDR-RJ45 converts a 5-pin, 5.08mm CANOpen terminal block header to dual RJ45 jacks.
- The CO-M12-RJ45 converts a M12 CANOpen connector to dual RJ45 jacks.
- The CO-TB-RJ45 converts a 5-pin terminal block to dual RJ45 jacks.
- The CO-RJ45-PWR provides inline monitoring and access to CAN_V+ for RJ45 networks.
March 13, 2012 No Comments
Schneider Altivar ATV31H037M2 VFD
I’ve been playing around with my Schneider (formerly Telemecanique) ATV31H037M2 0.5 HP VFD (variable frequency drive). I’ve put up some notes here. Here are my thoughts:
- If I ever need a VFD at work, I’ll consider Schneider. Based on a quick look, pricing seemed in-line with comparable VFDs.
- I think the -A version (with speed control on the front panel) is worth the extra ~$30 since it makes
playing aroundmachine setup so make easier. You can jog the standard version using I/O and switches or via software and Modbus/CANOpen. - I really like having CANOpen as a standard interface (Modbus is also standard). However, the CANOpen setup isn’t ideal, since you’ll have to make a custom cable or use a breakout board.
- There are a lot of settings; the drive appears to be very flexible.
- The manuals are very long and thorough.
- However, the manuals don’t provide much guidance on how to tie all the settings together (so I’m not sure when to use the more advanced settings and how to use the various settings together).
- Good cable and wire flow.
- The AC power input and drive connectors do not have permanent labels; but so far the sticky labels are still hanging on.
- The buttons are cheesy dome switches, which will probably wear out quickly if they are used heavily.
- The controller’s user interface sucks; to be fair, I’m pretty sure it’s similar to most VFD’s. If you’re doing a lot of setup, it’s probably worth getting Schneider’s cable and setup software.
- The newer ATV32 drives are pretty different; for example, the dome switches are gone, and you can get a CANOpen communication card with dual RJ45 connectors.
February 23, 2012 No Comments
Programming CANOpen Motion
How do you make a CANOpen motion control system move? Your program creates the desired motions by sending the appropriate commands over the CAN bus using the vendor independent CiA 402 profile.
A CANOpen profile is a standard set of objects to interface to a particular device type, such as inputs, outputs, encoders, or motor drives. A profile that is still being evaluated is called a Draft Standard; eventually it will become a CiA (CAN-in-Automation) standard. So CiA 402 was originally called DS402, and is still often called DS 402.
Most CiA standards are available from the CAN in Automation web site for free by requesting the desired standards. However, CiA 402 is not available. I suspect the reason is that CiA 402 is now part of the IEC 61800-7-201 and IEC 61800-7-301 standards, and thus are only available from the IEC.
I was able to locate and download a copy of the older DS402 standard; there might be a few changes, but it should be good enough for my uses, and I also have the various manufacturers’ guides on how they implemented CiA 402.
Ease of use is one weakness of CANOpen. I’ve been looking through DS 402 and although it may be well designed, it’s not easy to learn. I think more vendors should do what Copley Controls does: provide a much easier to use interface that makes it much faster to get started with their drives.
Another approach is to have a motion controller that controls the CANOpen axes, such as the Schneider LMC (Lexium Motion Controller) series, the Elmo Maestro, and (for Ethernet PowerLink) the Balder NextMove E100. In this case, your program interacts directly with the motion controller instead of the CANOpen drives.
January 21, 2012 2 Comments
Best Industrial Equipment For The Garage: 2011 Update
Overall my original post on buying surplus industrial automation equipment is still on the mark. I won’t repeat it again this year; instead, here are some comments based on 3 years of monitoring eBay and adding to my collection.
In Silicon Valley there are only two decent electronic surplus stores: Excess Solutions and Advanced Component Electronics. There hasn’t been a good local source for mechanical surplus since Triangle Research closed its doors.
On the web, PLCCenter has a great selection, is great for getting an idea of what stuff costs new, but has premium pricing (except for some on-sale items).
eBay is still the best source, but you need to be patient and know what equipment is worth. In general, I’m willing to pay 10-20% of the original cost, but many eBay sellers try to get 50%, and a few even ask for more than 100%. In general, “Buy It Now” means “I think my junk is worth a lot”. Availability is very spotty; some months there’s a lot of interesting stuff, some months there is nothing.
Also, be sure to check condition and return policies. Many eBay sellers do not have the ability, equipment, or inclination to test industrial equipment, so if it says “as-is”, don’t pay a lot. Most of the industrial equipment I’ve bought has worked, but I’ve bought a number of AMC and Elmo drives that don’t want to communicate (since the lights blink, I haven’t given up yet; I haven’t had time for extensive troubleshooting).
Don’t forget new equipment; many vendors (including Siemens and Panasonic) have offered somewhat-affordable starter packages including equipment and software (e.g. PLC and programming software). Some new PLCs are so inexpensive you don’t even need a starter kit: for example, Automation Direct’s Click PLC starts at $69 and the software is free.
Comments on specific equipment:
- Last time I checked, it appears the Cognex Insight smart camera software is now a free download (after registration). But I recommend verifying this before buying an Insight camera (which will probably cost >$100).
- DVT smart cameras are still often available on eBay, with pricing ranging from $50 (Legend 510 bought at the right time) to $500 or more (color model such as the 542C).
- Galil motion controllers availability is good, with a wide range of pricing (there are many unrealistic sellers). USB and Ethernet models are more expensive, although if you’re lucky you can buy one for under $250.
- CANOpen interfaces from Kvaser and Ixxat are frequently available for $50-$150. I’d recommend getting a used Kvaser or Ixxat instead of a new interface from someone else (which will be at least $100 anyway) because they have the best software support.
- Copley CANOpen servo drives are available fairly often; a reasonable price for an Accelnet is $50-$120; the Xenus is more expensive (>$150). The Accelnets are my favorite servo drive. I avoid the older models (800-xxxx) because I can’t find any documentation for them.
- Elmo CANOpen servo drives are frequently available.
- Ethernet Powerlink drives and EtherCAT drives are occasionally available , but the prices typically aren’t reasonable.
- MEI controllers are often available, at a wide price range, but I’ve never seen the software included. If you don’t have MEI software, don’t buy the board.
- Panasonic PLC’s are frequently available, but in general I think the asking prices are too high. At least Panasonic now provides a code-sized limited (but still quite useful) free version of FPWin Pro 6.
- Opto 22 I/O controllers, such as the B3000 and LCSX, are frequently available, often at reasonable prices ($50 and up). Opto 22 PACs are rare and expensive, especially the current models. Opto 22 I/O module availability is good.
- Wago 750 and Beckhoff K-bus availability is good, and, if you’re patient, you can get them at a reasonable price.
- The most popular couplers are for DeviceNet, CANOpen ($25-$75), Profibus, and Ethernet (>$100 for 750-842); I’ve also seen Interbus, serial, and EtherCAT.
- Digital input and output modules are the most common, and cheapest.
- Analog modules are less common, and more expensive, but if you’re patient, you can get one for <$50.
- Specialty modules, such as encoder interfaces and stepper drivers, are the least common and most expensive.
June 20, 2011 5 Comments
Applicom CANOpen Cards And Other Tidbits
I’ve been busy lately with a variety of tasks, including buying a car. I’d enjoy car buying if I had a big budget and was looking at fun cars like a Mini Cooper S Convertible (my semi-practical dream car), but buying a used car for my wife is another matter.
But since it’s been too long since my last post, here are some quick notes:
- The next post on the Eagle PCB and Alibre series is in progress
- I recently picked up a Applicom DirectLink DRL-CNO-PCU CANOpen card.
- Applicom is now part of Brad which is part of Molex.
- Anyway, the DirectLink card is a PCI plug in card with a CAN connector (DB9F, first time I’ve seen that) and some sort of x86 processor. The CANOpen stack is run on the DirectLink board; there’s no need to run a CANOpen stack on the PC side (e.g. CANFestival).
- DirectLink cards are available for a variety of interfaces (e.g. DeviceNet, Profibus), and share a common API. They’re meant to be used to interface fieldbuses with SCADA and soft PLC applications.
- However, I noted that the CANOpen software does show support for DS402 (motion profile).
- One nice plus is that the software will scan the network for CANOpen devices. So if I have a CAN device with unknown ID and baud rate, I can just change the baud rate and then let the DirectLink card figure out the CANOpen ID.
- I plan on writing more about this card, after I finish my current series.
- I managed to get over to Maido Stationery, and pick up some more JDM pens and a 0.3mm Kuro Toga pencil, so I’ll be doing another pen post soon.
July 29, 2010 No Comments


