Site Information

 Loading... Please wait...

Blog

Programming the Thomson Electrac Linear Actuator - ACM and AFM Data Frames

Posted by Wilfried Voss on

Thomson Electrac HD Linear Actuator Motion Control per CAN Bus

This post represents an excerpt of  Thomson Electrac HD Linear Actuator Motion Control per CAN Bus. The application note is available in eBook and Kindle format, and it includes a free downloadable source code. More Information...

In this post, I am explaining the Actuator Control Message (ACM) and Actuator Feedback Message (AFM).

Thomson Electrac Linear Actuator - ACM Design

The ACM data frame (PGN) controls:

  • Position Command
  • Current Limit
  • Speed Command
  • Motion Enable Signal

The architecture of the ACM message and its parameters is explained adequately in the user manual.

Reference: Page 24, “5.2.4 SAE J1939 actuator control message (ACM)” in the user manual.

The programming/coding of the actuator control message (ACM) is demonstrated in chapter Building the Actuator Control Message (ACM).

Thomson Electrac Linear Actuator - AFM Interpretation

In turn, the actuator provides feedback per AFM such as:

  • Measured Position
  • Measured Current
  • Running Speed
  • Voltage Error
  • Temperature Error
  • And more...

The architecture of the AFM message and its parameters is explained adequately in the user manual.

The programming/coding of the actuator feedback message (AFM) is demonstrated in chapter Handling the Actuator Feedback Message (AFM).


Arduino-Based ECU Development Board With Dual CAN Bus Interface

Arduino-Based ECU Development Board With Dual CAN Bus Interface

Leverage the power of an ARM Cortex M3 32-bit processing capability in combination with a dual CAN Bus interface to create your next CAN Bus or SAE J1939 application or prototype. By combining our dual CAN port interface, the Arduino DUE microcontroller, an OBD2 or SAE J1939 cable, and open-source software libraries you are ready to go with powerful a turn-key Arduino-based dual CAN bus solution.

More Information...

SAE J1939 Display Units for Off-Highway Industrial Engines

The  Enginemonitor displays by B-Plus are expansion tools, especially for industrial engines with SAE J1939 interfaces. They enable users to retrieve information from mobile machines and communicate commands directly. Thanks to their robust housings and protection level, the devices can operate directly in the cab and the outdoor area of mobile machines. Due to various device versions, the [...]

Read More »


SAE J1939 Protocol Stack Sketch for ESP32 Using the Arduino IDE

The ESP32 is a series of low-cost, low-power system-on-chip microcontrollers with integrated Wi-Fi and dual-mode Bluetooth. The ESP32 series employs a Tensilica Xtensa LX6 microprocessor in both dual-core and single-core variations and includes built-in antenna switches, RF balun, power amplifier, low-noise receive amplifier, filters, and power management modules. Furthermore, the processor provides the means to easily [...]

Read More »


SAE J1939 Diagnostic Device Includes a PGN, SPN Database

The handheld PCAN-Diag FD device from PEAK-System supports diagnosing communication on a CAN (FD) network. In addition, a separately available extends the functionality to analyze SAE J1939 data traffic. The SAE J1939 Standard describes communication in utility vehicles via CAN Bus. The standard specifies messages and data for transmitting diagnostic and control information using PGNs (Parameter Group Numbers) and SPNs [...]

Read More »


SAE J1939: Simulation of Analog and Digital Signals with the JCOM1939 Monitor Software

The JCOM1939 Monitor Software is ideal for monitoring, recording, analyzing, and simulating SAE J1939 data traffic. The system works in combination with our SAE J1939 gateways. This comprehensive and easy-to-use, easy-to-understand Windows software displays not only SAE J1939 data traffic but also scans the network, simulates an ECU (incl. full node address negotiation features), and responds [...]

Read More »


Data Acquisition from Heavy Duty Vehicles Using SAE J1939 CAN Bus

Modern vehicles have electronic control units (ECUs) to control various subsystems such as the engine, brakes, steering, air conditioning, and infotainment. These ECUs (or ‘controllers’) are networked to convey information and output measured and calculated data to each other.This in-vehicle network is a data goldmine for improved maintenance, measuring vehicle performance and its subsystems, fleet [...]

Read More »


A New Generation of SAE J1939 Gateway, ECU Simulator, and Starter Kit

Like many other businesses, we have to deal with the global shortage of electronic components. For instance, the NXP LPC 17xx processors we used for our SAE J1939 gateways and the starter kit are not available at this time. Even worse, there is no reliable information if/when production resumes. This situation forced us to rethink [...]

Read More »


SAE J1939 Data Acquisition System For Diesel Engines Measures And Records 23 Suspect Parameter Numbers (SPNs)

The Titan S8-CAN by Madgetech (USA) represents a data acquisition system for diesel engines that simultaneously measures and records 23 suspect parameter numbers (SPNs). The portable data logger is suitable for engine, road, and diagnostic testing applications. It connects to an SAE J1939 network via the diagnostic port and supports the monitoring and recording of SAE J1939 messages between [...]

Read More »


Design Of Proprietary Parameter Group Numbers (PGNs)

For a brief introduction to PGNs, see our post SAE J1939 Message Format and Interpretations of PGNs.As the name Proprietary Parameter Group Numbers implies, the SAE J1939 standard supports Parameter Groups in PDU1 and PDU2 Format that manufacturers can assign for their specific needs, which includes the design of the data field in the message. [...]

Read More »


Guide to SAE J1939 - Parameter Group Number Compilation

The following is an excerpt from  A Comprehensible Guide To J1939 by Wilfried Voss. For internal purposes, the parameter group number is extended to 24 bits = 3 bytes, where the most significant 6 bits are always set to zero. Each ECU must accomplish this process individually; this procedure is not part of the CAN standard. To compile [...]

Read More »