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

Posts from — January 2012

Compact (Tenkeyless) Keyboards

My Current Keyboard Setup

My Current Keyboard Setup

As I’ve written before, I find compact keyboards to be more comfortable than normal full size keyboards.  Compact keyboards are also called Tenkeyless keyboards since they do not have the numeric keypad on the right.

I currently have four compact keyboards:

  1. My original, a Lenovo Ultranav scissors switch keyboard with trackpad and trackpoint.
  2. An IBM SpaceSaver M4-1 keyboard with trackpoint.  It was made by Lexmark and has rubber dome key switches.
  3. Two Unicomp Model M Mighty Mouse keyboards and two Unicomp keypads.  These keyboards have rubber dome key switches.

The IBM and Unicomp keyboards are quite similar; for example, I can use the Unicomp keypad with the SpaceSaver keyboard.

My current work setup (shown above) is a Unicomp keyboard and keypad with my Kensington Orbit trackball in the middle.    I like having the keypad for heavy number entry; I like the keypad being out of the way since I don’t use it often.

The SpaceSave and Model M keyboards have a different feel than the UltraNav; they’re more crisp and clicky.  I like both styles (especially the Lenovo keyboard on my laptop), and both are much better than the typical, mushy keyboard.

Sometime I do want to try a mechanical keyboard, probably something with Cherry MX Blue keys such as a Leopard.  I find illuminated keyboards interesting; I’m pretty sure I’d want a tenkeyless one with Cherry MX Blues (unlike the Deck 82 which only comes with Cherry MX Blacks)

Although Unicomp doesn’t make a tenkeyless buckling spring keyboard, I’d still like to try a buckling spring keyboard (probably the EnduraPro).

The best resource on great keyboards is, of course,; for example, check out their mechanical keyboard guide.


January 24, 2012   5 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   5 Comments

A Slow Start To The New Year

I have been very busy recently with vacation (too short!) and various other family things to have to be done.   I should be able to get back to writing technical blog posts within a week or two.

January 11, 2012   No Comments