View source for HANcoder/Training Material/SmartCar
You do not have permission to edit this page, for the following reason:
You can view and copy the source of this page.
Return to HANcoder/Training Material/SmartCar.
You do not have permission to edit this page, for the following reason:
The action you have requested is limited to users in one of the groups: Administrators, Bureaucrats.
You can view and copy the source of this page.
Return to HANcoder/Training Material/SmartCar.
The smart car developed in part by HAN-AR is an all-in-one solution for beginner automotive students. It has built-in support for an OLIMEXINO-STM32, which utilizes a 32-bit microcontroller from STMicroelectronics. additionally, the platform has support for the following modules/features:
Eagle files: File:Eagle Smart Car PCB.zip
Parts list: File:Parts list.zip
How to put the thing together
The vehicle consists of a basic frame that is manufactured by a company called “Reely”. This frame is pre-built and consists of the following components:
The frame comes without a motor and wheels. Therefore, these components must also be included in the construction of the vehicle. The wheels and the motor are thus separately ordered. The motor type is a brushed DC motor instead of the brushless alternative. This is because brushless DC motors are easier to drive, as this can be done with an H-bridge circuit. The dimensions of the vehicle are as follows:
The mounting frame is the frame on which the electronics can be fastened to. This mounting frame can be fastened to the vehicle via four posts. Under normal circumstances, these posts are used to mount a cover in order to style the vehicle. This is now retrofitted in order to fasten a plate to the vehicle. See the figure below.
The frame is made from 6mm thick birch plywood. Birch plywood has been chosen as the material because of the following reasons:
The OLIMEXINO-STM32 is a development board that houses a 32-bit microcontroller within. With the help of the OLIMEXINO-STM32, it is possible to control the vehicle's actions. The vehicle has a mainboard with built-in support for the OLIMEXINO-STM32. The OLIMEXINO can be fitted to a dedicated slot. See figure below.
There are several pins the user has access to when the OLIMEXINO-STM32 is utilized. The pins that are accessible are:
|
The mainboard on the vehicle has support for Arduino shields. Many different Arduino compatible shields can be fitted onto the mainboard in order to expand the functionality of the vehicle. A dedicated connector has been made to fit this purpose. See figure below.
For more information about third party Arduino shields, click here.
An IMU stands for Inertial Measurement Unit, which can be used for measuring a body’s forces. The mainboard is designed in such a way so that the IMU is interchangeable with other modules in order to keep the system flexible. There are many IMU modules available on the market. A small list of popular IMUs is shown below.
There are many more IMUs then are shown in the table above. Some IMUs have more features such as the ability to measure magnetic fields. Most use different ICs (Integrated Circuits), and depending on the IMU, it would also have a difference in communication protocols. This makes it so that the pinouts and even the physical sizes on many IMUs are different.
The mainboard has two methods of adding an IMU to the system. Method one consists of using a piece of prototyping board with two 10-pin male headers soldered on each side. The male headers interface with the two outer female headers that are present on the mainboard. By manually connecting each IO to the appropriate connector, it would be possible to connect a host of IMUs to the system. An example of how this would look like is shown in the figure below.
The second way of connecting an IMU to the system is by utilizing the middle connector on the mainboard. The IO on this connector is routed in order to be compatible to one IMU module. This bypasses the need to build a custom arrangement. The IMU module that is compatible is a generic board that uses a MPU-9250 IC. See the figures below for the implementation.