From efdb5e3c7b69a5e2942dd7dc511c32d9a4c73bcb Mon Sep 17 00:00:00 2001 From: Gab_S Date: Sat, 25 Jan 2020 18:56:13 +0000 Subject: [PATCH] Upload files to 'SLAM_ROBOT' --- SLAM_ROBOT/index.adoc | 72 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 SLAM_ROBOT/index.adoc diff --git a/SLAM_ROBOT/index.adoc b/SLAM_ROBOT/index.adoc new file mode 100644 index 0000000..2750685 --- /dev/null +++ b/SLAM_ROBOT/index.adoc @@ -0,0 +1,72 @@ += Project i wanna die plis + +== Project Description + This was but a sad attempt at making a "budget" [Slam] + (Simultaneous localization and mapping) robot-vehicle, with a time of flight + Lazer sensor.It uses the esp32 as it's brains (tons of io pins, 2 core, wifi & + bluetooth on chip,low consumption,etc.) and a arduino nano that acts as a slave + controling the drive tracks by taking commands from the esp32. + +== Working principal + The working principal behind the robot is based on dead reckoning meaning we + create the map as we go assuming we've started from position 0,0.Using the tof + sensor we get measurments from all directions (360 degrees) this happens using + the stepper motor along with the hall effect sensors so we the degree of each + measurment great so now we can bind these values (distnace,angle) to the + robot's postion.The problem with our particular platform was space limitations + and the fact that the tracks are moved by dc motors some solutions on these + problems would be if possible driving the tracks by stepper motors directly or + otherwise so we know exactly how many steps each track has made therefore + deducing the robots position or using photo encoders in the small dc motors + producing the same effect.(problems with bad are also very real and can throw + off our measurments but hey we're not supposed to send this robot on mars ) + Being able to determine our traveled distance and having 360 "accurate" + measurments of the space traversed would enable us to construct an algorithm + which by using these data could find a way to traverse the space creating a + map along the way. + + +== Parts +- Esp32 +- Arduino Nano +- 28BYJ-48 Stepper +- ULN2003 Stepper Motor Driver +- I2C Logic Level Converter +- VL53L1X +- Hall Sensor +- Slip ring +- 2x18650 Batteries +- Battery Protection Board +- Toy truck +- L298N Motor Driver + +image:./pics/esp32.jpg[200,200] +image:./pics/nano.jpg[200,200] +image:./pics/stepper&driver.jpg[200,200] +image:./pics/logic_level.jpg[200,200] +image:./pics/sensor.jpg[200,200] +image:./pics/hall.jpg[200,200] +image:./pics/slipdisc.png[200,200] +image:./pics/bat.jpeg[200,200] +image:./pics/bms.jpg[200,200] +image:./pics/truck.png[200,200] +image:./pics/L298N.jpg[200,200] + +image:./pics/diagram.png[1000,1000] + +== Difficulties & things to consider +- Acquiring location position in a room +- Getting accurate data from budget sensors with low resolution +- Calculating travel distance based on Dc motors +- Maintaning electrical connections between the two rotating parts + +== Problems that managed to get solved +=== - Getting angle of measurment + Solution: Using a Hall sensor and a magnet to find 0 degree spot & using a + stepper motor with known gear ratio so we know the step angle +=== - Power consumption + Solution: Used 2xcells 18650 batteries because simple alkaline batteries + wheren't up to the task + +=== helpful links: +link:https://www.youtube.com/watch?v=fQ2iB7qkrUg[youtube homemade lidar]