# Teaching and Learning CAN Bus

### Mike Jensen

Posted Apr 10, 2012

One of the great things about working with SystemVision is its ability to model and analyze a variety of systems. One day I might be working with an automotive company discussing the electro-hydraulic performance of an automobile braking system. The next day I could easily be talking with an aerospace company discussing power distribution for the latest generation of a fighter or commercial aircraft. Needless to say, it’s interesting work with a miniscule boredom factor. But SystemVision’s intriguing ability to model and analyze multi-technology systems also turns out to be a bit of a challenge – at least for mere engineering mortals like myself.  Keeping up with even the basics in so many system technologies is nigh impossible. Fortunately there are mathematical and modeling corollaries between engineering disciplines, so understanding the behavior of voltage and current in an electrical system helps in understanding how pressure and fluid flow behave in a hydraulic system, or displacement and force behave in a mechanical system. Becoming well-versed, let alone an expert, in so many types of systems is the stuff of which engineering legends are made — if you’ve met one or two of these “legends”, you know what I’m talking about. In the world of EDA tools, we frequently invest a sizeable chunk of time to learn the basics of a new system technology, and then depend on customers to fill-in our knowledge gaps with the finer and usually important details. We often learn the finer points of a particular system technology piece-by-piece. Such was the case for me a couple of weeks ago while teaching a CAN bus workshop at a customer site.

While it’s easy to view SystemVision as a general purpose system simulator – I sometimes refer to it as just a big number crunching equation solver, not really particular about the type of equations users send it – we sometimes mold that general capability to address a specific engineering need. A perfect example is SystemVision’s CAN SI (Controller Area Network Signal Integrity) Toolkit. This toolkit uses a communication link between SystemVision and Microsoft Excel to automate CAN bus physical layer design and analysis. After defining a CAN network configuration in Excel, users simply click buttons in the Excel interface to auto-generate the network schematic, setup message and simulation data, run simulations, and measure network performance metrics. My assignment in the run-up to the CAN bus workshop was to translate the specific CAN SI Toolkit features and capabilities, as well as SystemVision’s more general vehicle networking modeling and analysis capabilities, into a reasonably coherent training experience for the customer. But before developing the workshop materials, I first had to learn how to “speak” the basics of vehicle networking in general, and CAN bus in specific.

Several years ago I spent 8 weeks in an accelerated language training program in preparation for a two year stay in Japan. If you’ve ever tried to learn a foreign language, you know some of the challenges. You start out by learning some vocabulary as well as a bit of grammar. You then assemble these bits and pieces together, practicing your new-found language skills on anyone who will listen – usually members of your family. When you start out, your new communication skills are limited to one four word sentence like “My name is Fred”, followed by a long list of word triplets like “Japanese is difficult”, “When is dinner”, and “Where am I?”. It’s not pretty, but you get your message across. The better your mentor, the more you can talk in your new language, and the more you talk, the better you communicate. And that’s just how my recent CAN bus workshop went. I went in with CAN bus basics loaded in my brain and a deck of Microsoft PowerPoint slides on my laptop. I’m happy to say the workshop went quite well. The customer learned about some of SystemVision’s cool capabilities in vehicle network and CAN bus modeling and analysis, along with some hands-on labs, and I added to my networking and CAN bus vocabulary and grammar.

So if you have a chance to sit down with a tool vendor who wants to talk about mixed-technology system modeling and simulation, just remember there is a better than even chance that he or she only knows the basics of your particular system or design technology. The value that person brings to your meeting is tool and modeling expertise – if you can describe what to model, the vendor engineer can turn your description into a simulation model. You bring the specific system/application expertise. The vendor engineer brings the modeling and simulation expertise. In many instances, it’s these informal industry/vendor partnerships that move system and simulation technologies forward. Many thanks to the engineers I’ve worked with over the years who patiently explained the finer details of how and why their systems work.