Skip to content
Snippets Groups Projects
Commit d4dfb887 authored by Robert Hedman's avatar Robert Hedman
Browse files

add README

parents
No related branches found
No related tags found
No related merge requests found
# Rust_project_description
## d7018e - special studies in embedded systems - PermoCar
##### Name : Robert Hedman
##### Mail : oreeha-6@student.ltu.se
##### Personal number: XXXXXX
##### Name : Olov Sehlin
##### Mail : oloseh-4@student.ltu.se
##### Personal number: XXXXXX
Goal: Create a semi autonomous permocar using rust on an raspberry pi, and arduinos for external tasks.
## Grading
3. Control the permocar remotely:
Create a multithreaded comminucations software running on a raspberry pi, with key features:
* One thread (Tracker) that can communicate with an arduino over a serial interface, e.g. USB, and other threads using communicators where neccessary. The main purpose of this thread is to continuously update the position, bearing, etc of the permocar and share it with threads that poll for it.
* One thread (Controller) that can receive data over tcp (from the remote operator) and also poll the tracker for current speed using rust communicators. This thread will then update the neccessary voltage using some controller (e.g. P, PI, or PID).
* Examine if rust can control the motor drivers directly using GPIO.
4. Control the permocar remotly and map the surroundings using a lidar (SLAM: Simultaneous localisation and mapping).
Extend the program with a thread that can poll a SICK LMS311 (lidar) for data, and map that data into an array.
This thread will also poll the tracker for position, heading, etc.
5. Semi autonous driving and localisation.
After driving the permocar manually around to create a map it should be able to get from its current position, point A, to a given reachable point on the map, point B.
A pathfinding algorithm may be used, such as A-star.
## References:
`SICK LMS 311 lidar user manual`
https://www.sick.com/media/docs/1/31/331/Operating_instructions_LMS1xx_Laser_Measurement_Sensors_en_IM0031331.PDF
`SICK LMS 311 lidar telegram listings`
https://www.sick.com/media/docs/7/27/927/Technical_information_Telegram_Listing_Ranging_sensors_LMS1xx_LMS5xx_TiM5xx_MRS1000_NAV310_LD_OEM15xx_LD_LRS36xx_en_IM0045927.PDF
`Rust general documentation`
https://doc.rust-lang.org/book/second-edition/
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment