Skip to content

11. Inputs

This week I explored different inputs and milled a board using a sensor that I plan to use during my final project. I also worked in a group to explore different inputs under an osciloscope.

Considerations

This week I only want to focus on one input, I decided that I wanted to try and get more consistent results using the VL53L1X on a milled board. I also want to try and get some kind of basic imaging working with the sensor, where I can detect different shapes. I will continue to use the board that I made in electronics production week, but I fixed up the headers so that I didn’t have to split them like I did last time (SHOW PROCESS)

New Board And Testing

With my remilled board, the first thing I did was just make sure I could get a simple output working. We didn’t have any active buzzers left in our lab, which I learned that I needed from last week. So instead, I found this vibration motor. I uploaded the Arduino IDE’s built in blink code, and changed the pin to the pin the motor was connected to, and it worked (PIC)

The next step that I did was getting distance readings from the VL53L1X, I used the example code from the library I used in electronics production week, uploaded the code, and was able to get distance readings.

Using the time of flight sensor

Next, I wanted to see if it was possible to combine multiple readings together to create some kind of depth map. I found this code online that made a web app and used multiple readings from the VL53l1X to create a 4x4 grid. I uploaded the .Ino sketch and in serial monitor I was able to get the multiple readings. However, when I opened the web app, I was getting a couple of errors. The initial errors I had were because I didn’t set the COM port and baud rate to the correct values. However, even after I set those, I still was getting error messages. Since I’m not familiar with Java. I took it to chatGPT (Talk more about this)

Even though I wasn’t able to get the bump map working this week like I intended to, I was still able to use 2 outputs, which I’m ok with for this week.

For my final project, I’m realizing that I have 2 options for using the time of flight sensors. The first option is using multiple of the vl53l1x to create an array of sensors, which would be able to read from multiple “zones”. The 2nd option that I have is using the VL53L1, which is an advanced version of the VL53L1X, which is able to read distances in an 8x8 array.

What I learned

I learned a lot this week about the input devices I chose to work with: the VL53L1X time of flight sensor and the MPU6050 accelerometer. Both of these devices use the same system of I2C, which I learned about in my group project using the osciloscope. I also learned a lot about using Arduino sketches across multiple platforms, as serial data can be read by many other systems, such as the bump map app that I tried to make work. I also learned a lot about how I want to use the VL53L1X going forward in my project, and has made me reconsider the most effective way to create my following system. For now, I think I still will impliment it but in a much different way than I originally considered. I now plan to use the sensor as a “Emergency stop” system, so if the wagon gets too close to an object or person, it will either slow down or shut of. The vl53l1x will be most effective because of the way it works, which I learned about. The ToF system will allow the sensor to work in a wide range of conditions and will be the most reliable for the environment it will be in.


Last update: April 3, 2024