--- title: Meeting 9/25/21 tags: meeting-notes --- ## Notes 9/25/21 ### Localization #### BLE localization - Evan was able to test reading bluetooth devices from the raspberry pi with some success - I was able to detect specific MAC addresses and estimate their distance, although my setup was pretty hacked-together, so the signal records were far apart and it was hard to tell if the fall-off was exactly exponential - Evan completed the trilateration algorithm on paper and is in the processes of putting into cpp that will eventually will interface with rest of the system with a ROS node - Algo seems to be efficient. just uses +,-,x, also one square root at the end - Using `bluez` to get low level bluetooth connection information such as strength, mac addresses, etc. - May potentatially need to write a custom driver for the coms chip that is on the jetson if above doesn't work as expected - [Intel Dual Band Wireless 3rd Generation 802.11AC 3168 WiFi + Bluetooth Card](https://www.amazon.in/Intel-Wireless-Generation-802-11AC-Bluetooth/dp/B071JR1YN5) ### High-level - Updates @leo or anyone else? ### Navigation - Updates @ashvin or anyone else? ### Control Camden (ex-chief engineer) gave a solid idea for a control system of the deposition system without any extra sensors except encoders. Apply a voltage $V$ to the deposition motor such that a setpoint angular position of the motor $\theta_{set}$ is reached by the current angular position of the motor $\theta_{curr}$ (determined with encoders) Uses PID control, where the error is $E = \theta_{curr} - \theta_{set}$ and in realtime, the sum, deriviative, and the current error itself with tuned parameters $K_p,K_i,K_d$ result in the following system: $V_{t+1} = V_t + K_p * E_t + K_i * \sum{E_t} + K_d * \dfrac{dE_t}{dt}$ where $E_t$ is the error at time $t$. After weight is added, error will add noise (more error) into the system and the voltage will increase and we can set voltage limits to know when the bin is full after some testing. As all PID controllers go, it will be a pain in the ass to tune. ### Testing Manual Control Ran into a series of issues when trying to run manual control Problems :-1: 1. Jetson was previously setup to connect to Pranav's hotspot, but we're trying to get it to connect to a router in headless mode and the wifi driver wasn't running for some odd reason 2. Jetson needs a 12v power supply with a 2.5mm adapter, but all the adapters we have use 2.1 mm, so it doesn't fit. Therefore cannot easily hook it up to a monitor to setup the wifi to the router 3. Had intermittent issues with communicating to the jetson over usb, but that was due to me being dumb and using the command incorrectly 3. After just using the hotspot, realized that the joystick driver only runs on Linux and not Mac (used a Linux dual boot last Spring) and left the dual boot at home All in all, wasted about 2-3 hours of multiple subteams' time. Next time, should get the details figured out prior to testing time and before multiple subteams are involved. This is the reality of robotics :100: ## Action items ### All - Get that [snake tutorial](https://app.theconstructsim.com/#/Rosject/463358) done ### High-level - Continue to look into individual subteams such as navigation, BLE localization and see what potential problems come up, and document them (could document here or in the behavior tree diagram) ### Localization + Navigation All of you will need to understand what the sensor data outputs first to do stuff with it. How is it formatted? What happens when things are occluded? Really play around with it like you're a 5 year old and **DOCUMENT OBSERVATIONS** (ideally in the meeting notes). 1. Run the apriltag detection ROS node see the outputs when pointed at the tags 2. Run the T265 camera ROS node and see the outputs 3. Run the LiDAR ROS node and see the outputs Instructions on how to do :arrow_up: will be in the GitHub by 9/28. :::info All the above should be done in BIDC, as of now only Ashvin and I have access. We will be meeting in BIDC (don't go to SC) moving forward so you guys can work on this. ::: #### Navigation specific - Work with Ashvin as he has a ROS navigation tutorial the he is working through to get a grip on navigation algorithims like RRT, A star, etc ### Control - Look into PID control further like the [deposition example](#Testing-Manual-Control)