Difference between revisions of "HANcoder/Training Material/Highwaysurfer"
Line 497: | Line 497: | ||
==Software== | ==Software== | ||
− | The software is split up | + | |
+ | The software is split up into 3 main parts. The input, the algorithm and the output. Each of these can be edited in the HANcoder software by double clicking the blocks. In the input block the inputs of the sensors are defined. In combination with the Simulink blocks it is possible to translate the sensor output to an input for the algorithm. The algorithm is the main logic of the code. The output would then provide the actuator with information on what needs to be done. (Figure 3 Complete software) | ||
+ | |||
===Input=== | ===Input=== | ||
− | For this system | + | The input gets data from the sensors. For this system we need to translate the output of 3 types of sensors. 3 ultrasonic sensors, 1 potentiometer and 1 rotation speed sensor. Below we can see how this is done using HANcoder. |
− | ==== | + | ====''Position Sensor''==== |
+ | From the potentiometer we get a certain voltage. If we multiply the voltage by 1/4096 and 1.065. In combination with the constant we can get the position of the car. (Figure 4 Position sensor) | ||
+ | ====''Speed Sensor''==== | ||
+ | The output of the rotation sensor is a sinus signal, but in combination with the interface chip it will be a block signal. With the 'timer input get' block out of the HANcoder library it is possible to get the frequency out of the block signal. If you multiply the frequency by: 2*Pi*0.04*1/44 it will give the speed of the roll as an input for the algorithm. (figure 5 speed sensor) | ||
− | ==== | + | ====''Ultrasonic Sensor''==== |
− | + | (Figure 6 ultrasonic sensor) | |
− | ==== | + | ===Algorithm=== |
− |
Revision as of 17:34, 7 June 2017
General overview
A car runs on a conveyor belt and can run on three different lanes.
When an obstacle is detected in the path of the car,
the car will switch a lane to avoid a collision.
It is possible to block all three lanes, but then the car will stop.
This demo is built up from different subsystems.
The mechanical, the electrical and the software.
All these systems are also divided into the sub-components.
Mechanical:
The construction of the total demo assembly is divided in 3 separate sub-assembly’s:
the housing components, the lane change mechanism and the conveyer belt.
Electrical:
The electrical components are connected by soldering and screw terminals.
The power supply from the wall socket goes directly into the transformer
that generates the correct power supply for the components such as the H-bridge
that controls the conveyer belt motor, the microcontroller,
stepper-motor and the ultrasonic sensors.
Software:
The software is also divided into 3 separate systems: the input, algorithm and output.
The input gives the values that the algorithm need to create the output.
The algorithm decides what happens with the belt. When there is an obstacle the car will switch lanes,
if all 3 lanes are blocked the belt will stop.
Introduction
The HAN-AR have two model based development tools, HANcoder and HANtune, that they would like to promote. In order to do this a new demonstration model was required. This is what the project team Highway Surfer has created. The model will showcase the abilities of the tools and will act as an eye catcher at tech fairs and conferences that the HAN-AR attends. With the help of this document people who are interested in recreating this project or start their own projects will be able to see what the steps involved are, the materials required and the capabilities of the tools, HANcoder and HANtune.
This project was started with the help a template. This template can be downloaded from the following link:
On this wikipage, you can find the building process for the mechanical parts, the wiring and other processes for the electronics, and the logic for building the software algorithm. To make it easy for the consumer, we have an easy to understand order list with relevant links.
Materials Required
In the Appendix, a detailed order list has been attached. However, a simple list is added in each subchapter to tender to specific parts.
Hardware parts
Local hardware store:
- 5.5 [mm] multiplex
- Aluminum L-profile 20X20 [mm]
- Bolts, nuts
- PVC tube (80mm diameter x 1m length)
- Grip material for the PVC tubes
- Conveyor belt
- Axes
- End pieces’ roll (wood)
Online webshop:
- Bearings
- Gears/pullies and belts, for the drivetrain and lane change mechanism:
Electrical
Online webshop:
- Olimexino STM-32 board
- Stepper motor-driver
- Ardumoto - Motor Driver Shield
- Transformer
- Transistor 7805
- Female power connector for Olimexino
- 6x Screw terminal block 1.50 [mm²]
- Mini fuse 2 [A]
- Mini fuse 5 [A]
- Resistor 10 [KO]
- Resistor 1 [KO]
- Capacitor 0.33 [µF]
- Capacitor 4,7 [µF]
- Capacitor 22 [µF]
- Zener diode 18 [V]
- Wall socket (220 ~ 230 [V])
Sensors
Actuators
Software
- MatLab-Simulink
- HANcoder
- HANtune
HANcoder and HANtune are available at OpenMBD. (On the website is a download manual for all the software.)
Mechanical
For the mechanical design the dimensions can be found in the CAD 2D drawings, which can be downloaded from the website [link here]. When all the parts are cut, they can be assembled. In the exploded views in this document the exact order of assembly is explained.
Conveyor belt base
Housing
To build the housing of the conveyor belt you need following items:
- 3x multiplex plates of 1220x610mm with a thickness of 5,5 [mm].
- Blueprints of the individual panels for the dimensions.
- Saw or something to cut the wood.
- Bolts(m5)
- L-profile(3000x20x20 [mm])
- Measuring tape
- Wood drill
Cutting
To get the right dimensions for this DEMO a LaserPro X500 was used which can be seen in figure 1.
The Solid Works drawings of all the wooden parts are send to a device that runs 'Corel Draw X8' which can be seen in figure 2.
The process can be seen in Figure 3. We chose this option to get a cleaner finish. Of course, there are other ways to get the panels to the right dimensions.
L-profile’s and drilling
The following L-profiles need to be cut- 2x540mm 5 holes per plane
- 4x100mm 2 holes per plane
- 2x460mm 3 holes per plane
- 10x50mm 2 holes per plane
Some holes need to be drilled in the L-profiles to match the bolts, for this DEMO 5mm. Be aware that the holes in the two planes are not on top of each other, see figure 4.
Assembling
Place the plates with the L-profile against each other and mark the holes.
Do not forget witch L-profile you use, every profile is slightly different even with the best measurements.
Continue by drilling the marked holes in the wood and assemble the parts with bolts and nuts. Start from the bottom and work all the way up.