Modular electric robotic cars developed for cities
The Robotics Innovation Center (RIC) at DFKI (Deutsches Forschungszentrum fuer Kuenstliche Intelligenz/German Research Center for Artificial Intelligence) in Bremen has shown its experience with a range of projects involving self-developed, upgraded, modular, and reconfigurable vehicle platforms in the electric mobility field that aim to meet the needs of urban life. The EO smart connecting car (EOscc) concept vehicle family is known for its morphological adaptation and its modular construction concept for a spectrum of specific applications, which makes it a pioneer in its field. "EO" means "I go" in Latin.
EOscc1 and EOscc2 are designed as micro-car sized electric robotic vehicles, where complex robot design requirements have to be met, among them extended mechanical functionality demands, as well as vehicle requirements, for example high power capability and robustness. With the help of rapid development methods, optimization, and modular configurable approaches, EOscc2 and EOscc1 are vehicles that can meet individual mobility requirements for everyday life. Both cars are four wheel-driving electric vehicles with x-by wire (steer-brake-throttle) control, which reaches extended maneuverability through its suspension/axle design and decentralized power train (wheel hub motors and brushless dc motor controllers).
With these features, the vehicles eliminate the problems of urban traffic such as shortage of parking spaces, maneuverability in extreme traffic situations, and more. With the coupling mechanism for Car-2-Car, Car-2-Extender, or Car-2-Infrastructure (charging station, rental station), the cars reach high modularity.
Modules like the range extender and the pick-up module allow vehicle extension up to the road train mode and are based on hardware and software configurability. They enable a higher efficiency and individuality of applications. Because of these features, the electric robotic systems are quite complex. In order to cope with this complexity, these issues are addressed through the design and the development.
With this perspective, EOscc1 was constructed with a total of 24 independently-controllable off-the-shelf linear electric actuators, which adjust the mechanical body part position for steering (from double Ackermann up to sideways driving), lifting (from adjusting the height of wheels up to changing the curve tilting of the vehicle), and folding of the car individually. Each linear electric actuator, for example the brushless DC motor controller of the wheel hub motors, is controlled separately by an industrial central PC (PC/104) via four different CAN networks (front axle, rear axle, morphology, control and power electronics). This achieves a higher modularity and flexibility in a basic physical bus topology, as well as easier system development, and less installation and testing effort.
EOscc2 is the second generation of the DFKI modular concept electric robot vehicles with optimized and modified suspension and body design for robustness and extended functionality, which aim to solve urban traffic problems and achieve autonomous driving. During the development of the control layer of the EOscc2, we kept the whole system as clearly arranged as possible, aiming at a feasible system implementation with our experience from EOscc1. Therefore, the control layers "high-level" (perception and planning for robotic behavior on Robot Construction Kit framework) and "mid/low-level" (actuation of whole hardware components) of the EOscc2 are separated, unlike the control layers of the EOssc1.
During the development of EOscc2, a linear actuator was designed and constructed in-house. To build the linear actuator, an industrial synchronous servomotor with integrated powerful driver electronics and ball screw or acme thread type spindle gear were combined.
The actuators are built with servo control electronics and communicate via the CANopen network, which is a sophisticated and secure communication standard for distributed industrial automation systems. The selected servomotors of the EOscc2 actuators gave the system development the necessary flexibility for different tasks, for example steering (between 32 to -92°), lifting (in total 16 cm), folding (to decrease the parking space from 4,32 m² to 2,84 m²) or the manipulation of other body parts. They are used as servomotors with matching physical characteristic and CANopen network, which enables the addition of servos up to 127 network nodes without a huge programming effort on the control software.
The CANopen communication, which is based on the CiA 301 standard, as well as the adjustable device profiles and different motor control functions increases the dynamics of the robot system. Especially some features of CANopen, such as standardized device function and parameter description (Object Dictionary) keep the system straightforward and at the same time modular and flexible. The "producer-consumer model" without any additional protocol overhead enables efficient transmission, so that the message of a node is transmitted to other CANopen nodes like a broadcast message. This solves the complex synchronized critical control tasks of the robotic vehicle.
To realize the control of the whole CANopen network, we started to develop rapid control prototyping (RCP) methods and created a model-based experimental control logic of CANopen network according to CiA 402 in a Matlab/Simulink environment. Later, this network management and state-machine control logic subsystem (see the green Simulink model in Figure 3) was connected to the mid- and low-level control layer (steering and lifting actuator control, steer/drive/brake-by-wire, communication, and user interfaces) and the kinematic models of the robotic system to control all network nodes as well as other vehicle control objects on different CAN networks.
Because of its modularity and scalability, the same software module could be re-used within the main model controlling the whole car. Afterwards, the whole system was tested in a hardware-in-the-loop (HIL) platform. Thus, the RCP unit could iteratively be used for device control and parameter tuning starting from the early stages of the development.
The last step was adapting the protocols for the micro-controller (32-bit ARM Cortex-M) of the vehicle control unit (VCU), reusing some parts of the RCP model and code, which were already written in C (see Figure 4). Hence, the VCU micro-controller took over the CANopen network management tasks (NMT) within different subroutines, for example the setup of servo motors (via service data objects (SDO) direct access to object dictionary (OBJ) and re-mapping of process data objects (PDO) parameter), as well as observing and controlling device states (status and control word management) with 500 kbit/s CAN synchronized broadcast communication.
The development of the CANopen network control and device management was successfully transferred to another platform with the aim to upgrade four on-the-shelf MIA electric vehicles in order to manipulate the steering and the braking systems of the vehicle for autonomous driving in the Dabrem project (Dalian Bremen Electric Mobility).
Mehmed Yüksel, Deutsches Forschungszentrum für Künstliche Intelligenz (DFKI). This article originally appeared in the CAN in Automation (CAN) Newsletter magazine. CiA is a CFE Media content partner. Edited by Chris Vavra, production editor, Control Engineering, CFE Media, firstname.lastname@example.org.
See additional stories from CAN in Automation linked below.