Click on the links below to jump to the right section
10-20-21: After finishing our project definition I researched the parts and electronics required for this project:
Looked into circuitry options: breadboard, Protoboard, Custom PCB
We will likely use JLCPCB to print custom PCBs, but we will need to order them quickly as shipping takes time
Circuit will need to interface micro controller(Arduino, Adafruit M-series, Raspberry Pi), 12 servo motors, battery, and various sensor pins(power switch, user control, gyroscope/accelerometer)
We will likely sources our electronics from locol stores or LCSC
10-21-21: Today I looked into previous attempts online on the Micro Spot Dog, and found that most of the attempts revolved around improving the original 3D print designs to make weak points stronger or to make room for new internal parts like extra micro controllers or sensors.
10-25-21: Today, Marcos and I researched different possible designs to reference for our Spot Micro Dog. We came across multiple reference designs on Thingiverse, and we are currently debating between designs that use glue vs screws, 996R vs PDI servos, and other differences. This week, we hope to reconcile the difference between designs and clarify our own design and build plan so that we can quickly purchase the materials for the project.
10-26-21: Today, we made some important decisions on our project.
We decided to use PETG as the main filament for the project since the increased durability in comparison to PLA is worth the more intensive printing process.
We also decided to use 996R servo motors from Amazon, and we will be following the SpotMicroAI version guide for our robot dog.
We will also use the Raspberry Pi Zero W as the main micro controller for our project.
We are yet to decide a battery to power our project, but we know we will need :
a 5V Step-Down UBEC to power the Raspberry Pi
a 6V 20A Step-Down SBEC to power the Motors through a PCA motor controller board.
10-29-21: This week, I went on college visits so I did not come to school, but I did research and work on the project at home. I researched the circuit schematic for the Raspberry Pi Zero W micro controller and found the voltage protection system. The Raspberry Pi is designed to operate at 5V input voltage, which is why it is necessary to use the 5V Step-Down UBEC. The motors and motor controller board can use an operating voltage of 6V, but we needed a high amperage SBEC since the motors would draw a lot of power. These Step-Down voltage buck converters are necessary since the components can not handle direct voltage from the 7.4V battery.
11-02-21: Today, I purchased the 5V UBEC buck converter and the Raspberry Pi Zero W from Adafruit.com. We also researched the screws, nuts, and other fasteners necessary for the assembly of the project.
11-03-21: Today, I downloaded and configured the ServoHornTester.stl file and printed the model on my Creality Ender 3 using white PETG filament. The first time I tried printing the file, the bed was too low/far away from the nozzle, so the plastic did not adhere well to the bed and the filament started stringing/peeling off (left picture below). I re-leveled the bed and printed a second time, and it worked well.
11-04-21:
Today, I post-processed the ServoHornTester I printed yesterday by drilling the 1/16" holes (right picture above).
We also considered changing our motors to PDI-HV motors, since online reports found that the 23 kg/cm torque these would provide are better capable of moving the robot dog in comparison to the 15.2 kg/cm torque the MG996R motors provide, but we decided the other motors were too expensive. We will have to test our motors and see if the lower torque will still be sufficient to power our machine.
I also purchased more materials from Amazon: socket head screws and bearings.
11-05-21: Today, I downloaded the STL files for the 3D printed components. The original design had a black and yellow color scheme, so we changed all the yellow colored prints to white. I will print these pieces out over the weekend.
11-08-21:
Over the weekend, I got most of the components we ordered online: Raspberry Pi Zero W, 6V UBEC Converter, MPU6050 sensor, 16x2 LCD, M5/M4/M3 Screw Kit, Bearings. All I am waiting for are the extra M4 x 20 screws.
I also was able to print out the 4 leg covers. This took a couple of tries to make sure the bed was leveled properly. We also sent 3D print files of the TPU rubbery feet to Ms. Knapp to so she can print it out at home with the Lulzbot 3D printer with the Aero-Extruder. I also tried printing out the nose cover and the back cover for the main body, but I face a lot of issues with the print not adhering to the build plate.
11-09-21:
Today, we organized the 3D Print files for the top and bottom covers on the Spot Micro. Because of their length, they will not print on our home printers, so we will use the printers at the school for these pieces. However, we did not have the PETG filament in the right size for the school printers, so we used PLA filament, Since these components are not structural, this should not affect our product, but if it does turn out to be a problem, we will print out the PETG covers using one of our friend's larger printers.
11-10-21:
Today, we were able to start the prints for the top and bottom covers on the school printer. These are large components, so they will likely take a day to print at the very least. I was also able to get the front and back covers to print on my home printer. I was facing a lot of issues with bed adhesion (left side of picture on the left) because my printing bed is warped: I can either have a level bed that is too close to the printing nozzle, or a warped bed that is the right distance away. I solved this issue by offsetting the Z-Axis of the printer by 0.025mm. This allowed the bed to be level and far enough away so the first layer adhered properly to the bed (right picture). All of the prints should be finished by tomorrow or Friday.
11-11-21:
Today, we were able to finished printing the bottom and top covers, and we started laying out the parts for one of the leg pieces. We also went to Mentor Matching Engine and requested a mentor for our project. I also got the extra M4 * 20mm screws today, so we have all of the parts for our project at this point.
11-12-21:
Today, we laid out all of the parts we 3D printed so far and got a sense for the scale of our robot. We also assembled on of the legs and realized that there were a couple of weak spots in the design for the Leg Piece. I redesigned these parts to increase the thickness at the weak spots, and sent the upgraded designs to Marcos for 3D printing. I also reprinted one of the Leg Covers since one of the prints did not come out properly -- the thickness of the side plate was not enough due to my warped build plate. Also, the Rear Cover snapped where the screws attach to the main body, so I redesigned that component for more thickness as well. The redesigned version also has cutouts for the LCD Display and the Power Switch.
11-15-21:
Today, I test fitted the Rear Cover print that I designed over the weekend. The 16 by 2 LCD display fit inside the cutout perfectly, and the retention screws also threaded properly in the pre-printed holes. However, the rocker switch did not fit properly because the dimensions of the image I found on the Amazon link did not match the product we received. I was able to model the LCD cut out based on the LCD I had at home, but since I did not have the rocker switch at home, I could not use my caliper to measure its dimensions. I will try to redesign and reprint this part over this week. I also started to assemble one of the leg pieces, but the Leg Cover piece broke when I tried to hammer the bearing into place. I will either redesign this part to fit better or just reprint the part and sand the bearing divot to fit.
11-16-21: Today I redesigned the Rear Cover by increasing the width of the switch hole by 3mm. I was able to reconfigure the 3D model in Inventor using parametric modeling, so future adjustments will be much easier. I will print this part tonight. We also stress tested the redesigned Leg Piece vs the old Leg Piece, and it was able to withstand the force we applied with our hands. The old pieces was able to handle a good amount of force too, but it broke eventually, which proves that the redesign was necessary.
11-17-21: Today, I post-processed the V2 Rear Cover and the switch fit in the socket this time! (picture above on the right). Before I attach the switch and the LCD completely, I need to solder wires onto them. I researched the wiring diagrams for these components. Tomorrow, I plan to solder and build the connectors for the LCD display using the 22 gauge wire and DuPont connectors I have at home. I will need to do further research on how to build connectors for the switch (or if it is even worth the trouble) since the high voltage, amperage, and gauge of wire that it receives from the battery rules out most connection methods I know of other than soldering. The only reason I am trying to avoid soldering as much as possible as it will difficult to remove, but that would not be too much of an issue since we have 14 spare switches.
11-18-21: Today I started to design and construct the wiring for the LCD Display. Based on the basic circuit diagram below(left)*, we can see that the LCD display requires 12 pins/wires in total. 6 go to the micro controller directly, while 6 must be processed through a breadboard before going to the micro controller power rails. Thus, I will make two separate 6 by 1 DuPont connectors. However, these 6 pins each are not all next to each other, so I will need to split the 6 wire ribbon cable to reach the right pins.
*NOTE: I used an Arduino Uno for the circuit model because Tinker CAD does not have the Raspberry Pi Zero W in its software. The circuit should be the same regardless.
11-19-21: Today, I finished soldering the wires to the LCD (bottom left picture). The picture above on the right shows me soldering the wires to the LCD pinout pads. After a soldered on the two 6 wire ribbon cables, I began to crimp the DuPont connectors to the wires. We decided to use female DuPont connectors for this end of the connection. There are four steps to crimping the DuPont connectors shown below on the right. From left wire to right wire the process is as follows:
Strip the wire approximately 1/8 in
Slide the wire into a DuPont female pin. Make sure to fold the retainers at the bottom around the insulated portion of the wire to hold it in place
Crimp the connector pin the wire
Remove the tab
Next Monday, I will finish crimping all of the wires and slide them into the DuPont connectors.
11-22-21:
Today, I finished crimping the 6 by 1 DuPont connectors(picture on the bottom left). However, I now have a new issue to resolve -- the one of the yellow wires broke off the LCD display. I re-soldered the wire to the LCD, but since the wires were at the perfect length, the new connection bends all of the wires and is not as strong (see picture on the right). This should not cause too much of an issue, but if the connection breaks again I will cut a new length of wire and completely replace the shortened yellow wire.
11-23-21
Today was the last day before Thanksgiving break, so we just cleaned up our cabinet and set up all of the parts we have printed so far to mock our completed assembly. I tried to resolve another problem, the power switch we have is rated for 6A 250V AC current or 10A 125V AC current, and there is no data of how it would handle the 7.7V DC current from our battery. Online, my research showed that these ratings matter as the DC voltage does not "die" off as quickly as AC voltage when the circuit is broken, so my intended configuration could cause issues. Regardless, my research showed that the switch should still be able to handle the voltage since AC switches can usually handle 10% of the DC voltage of their rating. Still, this is another issue we may have to resolve in the future if my plan does not work.
11-30-21: Today, I started to plan the wiring for the power switch using the XT60 connector cables. Some important notes I found online: while soldering the XT60 connectors, I must keep the other end of the connector inserted to dissipate the heat. The steps to soldering the wire to the connector is as follows
Tin connector lead with solder in the cup
Strip 1/4in of wire and tin the exposed copper
Cut 3/4in heat shrink and slide over wire (must be far away from end to prevent heat from shrinking too early
Melt solder in header, and press wire into header cup
Add solder around joint to solidify connection
Slide heat shrink over joint and shrink with flame
12-1-21:
Today I began to solder the wires to the headers. The wiring diagram is shown to the left. I will need to solder the wires to the switch leads last because the switch needs to be inserted into the 3D printed cover first. I still need to reprint the back cover with the original thickness as my modifications were interfering with other parts.
Red = Male end of the XT60 Connector
Blue = Female end of the XT60 Connector
12-2-21: To the left I have pictures showing the different steps to soldering wire to the XT60 connector as mentioned on November 30th entry. This detailed process is important since this joint will be handling high amperage and voltage. A proper connection will reduce the resistance and heat absorbed by the connection, and I was able to achieve 0 ohms (negligible resistance). A picture of me testing my joint is shown below.
12-3-21: Today and over the weekend, I drew up a complete circuit diagram of the electronics to make the soldering and connections easier to reference. I am also planning on making a PCB with this drawing, which we can implement later for a more polished product; however, this is not absolutely necessary to complete our project.
12-6-21: Last week, Marcos and I worked on our own tasks, separately for the most part, so today, we took the time to regroup and update each other on our progress and what we plan to do for the next two weeks before winter break. Afterward, I de-soldered the one wire I attached to the switch because I realized that both lead would need to be soldered after inserting the switch into the cover. I reprinted the cover over the weekend, but it broke during transport. I reprinted the cover in the night, but the print failed completely(below left picture).
12-7-21: Today, I started working on the connector between the LCD data pins and Raspberry Pi. I finished the connector to the LCD end but I still need to finish the ends that plug into the various Raspberry Pi GPIO pins. I also finished reprinting the back cover(above right picture), so I will finish the switch circuitry tomorrow.
12-8-21: Today, I soldered the power circuitry to the switch once I inserted the switch into the reprinted back cover. To insulate the connection, I used hot glue because it also served to reduce strain on the switch leads(above).
12-9-21: Today, we did another mock-up of our Robot Dog using the new parts and electronics I have completed so far. I also crimped on the connectors for the GPIO pins, I simply need to match them up with the pin numbers on the Raspberry Pi. I will need to reverse the order of the GPIO pins from what was on the circuit diagram, but this should not affect anything, it will simply require a correction in the code.
12-10-21: I continued to work on the wiring between the Raspberry Pi and the front electronics. I crimped the cable for the Raspberry Pi to LCD Data Pins connection.
1-4-22: Today was our first day back from Winter Break, so Marcos and I touched base on our progress over winter break and our plans for the next week. I continued to work on creating new wires for the connections, specifically for the 5 pins on the two PCA Boards that connect to the Raspberry Pi.
1-6-22 In continued to make the wires for the PCA Boards. I finished two wires that connect from the PCA boards to the breakdboard, and I started constructing the connection to the Raspberry Pi DuPont connectors. Although my wiring diagram says to take to 3.3V pin from the Raspberry Pi, run it to the break board, and then run it to where the PCA wire is plugged in, I am just going to connect it directly because no other pin requires a 3.3V power source.
1-7-22: Today, I finished the wiring for the PCA boards and started to work on the connection from the 5V 3A buck convertor to the Raspberry Pi power lines. The pictures below show my progress from this week
1-10-22: Today I finished making the cable from the Raspberry Pi power pins to the breadboard to establish voltage lines I could route to the power cable for the LCD display. I also started making the cable connecting the power cable of the LCD to the breadboard.
1-11-22: Today I finished the breadboard end of the power cable to the LCD display. I wired the 6 pins to the appropriate GND or 5V+ power rails. For the the contrast wire(orange), I created a voltage divider using a 10 ohm and 220 ohm resister. For the anode wire(light green), I connected a 220 ohm resister in series before running it to the 5V+ rail.
1-12-22: Today, I split-soldered the wires on the SBEC voltage step down so I could power both PCA boards through the green wire terminals.
1-13-22: Today I worked on the power connections from the SBEC cables I split to the green terminals on the PCA Board. I was able to completely finish the main board electronics. I taped down the power wires with electrical tape to aid in cable management, and I bent the ribbon cables to attach it evenly with the LCD display wires and power connection. There is a picture above showing the full completed circuit; all that remains is to plug in the motors.
1-14-22: Today I also did a quick test with the battery plugged in, and the LCD display and power LEDs on the PCA Boards light up, which is a good sign. I will have to program the Raspberry Pi before I can confirm that the rest of the circuit works. Unfortunately, the back cover 3D print broke again. This should not be an issue since I will just have to reprint the piece, but it will take some time to melt the hot glue and remove the wired connections because those survived. Over the weekend, I hope to reprint the leg covers with a wider diameter for the bearings, as well as another nose cover.
1-18-22: Over the weekend, I tried reprinting the cover pieces, but I was running into some unresolvable issues with my 3D printer. I will bring the white PETG filament to school tomorrow so that Marcos can take it come and print the covers on his printer. I was also able to get the panel mounted USB cable and modeled the cutout for it, so I will need to remodel the front cover.
Today, I detached the electronics from the broken back cover; the LCD came off fine but the switch was very difficult to remove because of the hot glue. Using the multimeter, I confirmed that the electrical connections were still at 0 ohms, but the hot glue residue and shorter cut wires may pose an issue. I might have to replace some of the wires in the switch circuit, which is unfortunate but not extremely devastating.
1-19-22: Today, since I am waiting for parts to print out, I started to familiarize myself with the programming side of the project. I read through the files to format the SD card and set up the Raspberry Pi. This process must happen at home because it takes a lot of admin permissions that will take I while to get approved through the school.
1-20-22: Today I set up the 3D print for the Rear cover using the school computers since we don't need this part to be in PETG, PLA is fine. I also began to remodel the front cover to implement a USB Micro B port.
1-21-22: The back cover finished printing at the school, so I spent most of the class cleaning up the part. The hole for the switch was slightly too small because of different 3D printing tolerances, but I was able to chisel and sand the hole for the switch to fit. I also started to solder the power wire to the switch, and I will finish this next week
1-24-22: Today, the roads were really bad, so I arrived late to school. I discussed with Marcos about bringing my laptop into school to program the Raspberry Pi.
1-25-22: Today, I was able to reconstruct the front cover power connection. I still need to drill the holes for the LCD screen mount. The yellow wire on the LCD screen broke once again, so I will try to fully replace the wire tomorrow.
1-26-22: Today I was able to replace the yellow LCD wire, and I tested it against the Raspberry Pi to ensure the connections were correct. Then, I hot glued the wires to make sure they would not break again. I mounted the LCD on the front cover using the M2 x 6 screws and finished by sanding the front surface. Tomorrow, I hope to install it onto the robot and revisit the back cover remodel.
1-31-22: Today I continued to remodel the front cover, opting for a separate attachment instead of remodeling the original file since the .stl file would not convert to .ipt. I also showed Marcos how to wire the motors to the PCA boards. I noticed that the power wires were interfering with the 3D printed parts, so I might need to resolder those -- I don't think they can be bent out of the way without damaging the connection. I sent Mr. Morales the file to print the original front cover.
2-1-22: Today, Marcos and I tried to solve issues with the Raspberry Pi since it was not connecting to his WiFi at home yesterday. I also modeled the USB attachment to the front cover, and I sent that file to print.
2-2-22: The first model of the front attachment fit inside the front cover, but the indents for the cable port were completely melted from the printing bed due to the printing orientation. They also had a gap in the back. I remodeled and reprinted the attachment in a different orientation, and it fit properly this time. I plan on removing the support material and gluing it in place later next week.
2-3-22 -- 2-4-22: I was not in school due to college interviews
2-7-22: Today, I started to require the back cover. I removed the heat shrink and scraped off the outer portions of the solder. I will need to bring some solder wick from home to remove the rest of the solder.
2-8-22: Today I was able to finish desoldering the power connections; tomorrow, I hope to resolder them on the other side of the switch wires so that the part fits onto the rest of the robot. I also attached the panel mounted USB port to the front attachment. The front cover broke, so we need to reprint that before I can permanently glue the piece in place.
2-9-22: Today I was able to resolder the power connections to the XT60 connector, so now the black 3D printed part should fit properly. I will need to scrape off the glue layer and test that tomorrow.
2-10-22: Today I scraped off the glue on the front cover and tested the 3D printed part, which fit properly now that the power wires are out of the way. I was not able to seal the last solder connection with heatshrink because of how tight the wire curves, so I wrapped electrical tape around it to hopefully insulate as much as possible. I might go back and hot glue that part for extra insulation. Also, Marcos and I plan to meet up at my house after school tomorrow to figure out our issues with the Raspberry Pi on a home WiFi network
2-11-22: Today I researched the wiring requirements for the ultrasonic sensors. Because we are using an LCD display, 2 PCA Boards, and 2 Ultrasonic sensors, a lot of the Raspberry Pi's data pins will be populated. Consequently, many of them have specific requirements for the pins capabilities. I know that on Arduinos, only some pins have PWM capabilities. I will need to research more on the Raspberry Pi's capabilities and the requirements of each of the components we are using. I do not think this will be a big issue in the long run, since the LCD Display and Ultrasonic sensors are not essential, and I know I have enough pins for the PCA Boards. Here is website I found that provides useful information of the Raspberry Pi pins: https://pinout.xyz/
2-14-22: Over the weekend, Marcos and I were able to make a major breakthrough with the code. We confirmed that the Raspberry Pi was functional and got our laptop to recognize the Pi and the XBox controller over WiFi. However, we are having trouble moving forward on the next steps of uploading the code from the GitLab repository, so we contacted our mentor for help on that and started researching the issue today in class.
2-15-22: Today, I brought the robot parts back to school and researched how to set up the router on the school system. I also started compiling the GPIO Pins in a google sheet so I could pick out the ports to use. Sources:
https://www.electronicshub.org/interfacing-16x2-lcd-with-raspberry-pi/
https://tutorials-raspberrypi.com/raspberry-pi-ultrasonic-sensor-hc-sr04/
https://www.seeedstudio.com/blog/2019/11/04/hc-sr04-features-arduino-raspberrypi-guide/
https://wiki.seeedstudio.com/Grove_Base_Hat_for_Raspberry_Pi/
2-16-22: Today I continued to compile the GPIO pins for the Raspberry Pi. I realise now that we should have plenty of pins for our code, once we figure that part out. I also found the resistors we need from the Digital Electronics lab.
2-17-22: I was not in school today for 1st period.
2-18-22: Today, the entire class went to the library for an escape room.
2-22-22: It's 2sday! Today, I rewired the Raspberry PI GPIO pins to match with the pins I decided with the spreadsheet shown above. I also gathered the wires I need for the Ultrasonic sensors from the DE lab. I realized that the two sensors need to be wires seperately because the provide different data signals, so I will make two circuits on the breadboard.
2-23-22: Today, I finished up the rewiring of the Raspberry PI GPIO pins and started to make the 4-wire DuPont connectors for the Ultrasonic sensors.
2-24-22: I continued to work on the Ultrasonic sensor wiring circuits, and I finished the circuit for one of the sensors.
2-25-22: I was not in school for first period today
2-28-22: Today, I started to make the second wire for the second ultrasonic sensor, however, one of the wires broke. I soldered on some more wire, but if the connection is bad, I may have to replace all of the 4 wires to maintain the ribbon form.
3-1-22: Today I tried to pair my computer with the router in the classroom, but I found that my laptop is having issues with the m.2 boot drive, so I will try taking that home and fixing it.
3-2-22: Today I was able to open up the laptop at the school and I saw that the m.2 drive was loose, and that is why I was unable to boot Windows. I fixed the drive and was able to boot to windows, and there was luckily no data loss. I was also able to connect to the Academy router
3-3-22: Today I mainly worked on catching up with documenting and researching the code for the project. We plan to work on the robot over this weekend.
3-7-22: Today I researched the LCD Display code for raspberry pi, and I realized that there would be a lot of issues, so I will try to redo the circuitry with an I2C LCD display. https://www.digikey.com/en/maker/blogs/2018/how-to-connect-a-raspberry-pi-to-a-16-x-2-lcd-display
https://www.sparkfun.com/datasheets/LCD/ADM1602K-NSW-FBS-3.3v.pdf
3-8-22: Today I updated our mentor, and I also focused on researching the import busio function and the ultrasonic sensor code.
https://forums.raspberrypi.com/viewtopic.php?t=301860
I refrenced the website above to write the code below to test both of our sensors.
3-9-22: Today I got the I2C LCD display in the mail, and I started researching how to implement it in the robot. I should be able to simply replace the existing LCD screen (which I can definitely use for other projects so it won't be wasted) and wire the SDA and SCL pins to the same rail as the PCA Boards. This LCD runs at a 5V rating though, so I can use the same common ground rail as the PCA boards but I will need to wire the power rail separately.
3-10-22: Today I helped Marcos debug the "from log import Logger" code. We found that this line is actually importing a Python class from another file, not an online library. Therefore, all we need to do is either fix the line to find the file directory properly, or copy and paste that class definition into the code file.
3-11-22: Marcos tried fixing the code file directory but that did not work, so he tried copy and pasting the class definition. We will need to test that again once we delete the import line.
3-14-22: Today I looked over the code with Marcos to see what could be changed to make the code run. Later, Marcos was able to successfully test the motors and make them run, but only one of the PCA Boards worked and it started burning up.
3-15-22: Today, we were able to successfully change the Academy router SSID and password to mask as Marcos' home network, so tomorrow we will see if it will connect to the raspberry Pi.
3-16-22: Using the Academy router did not work, but I got a hotspot on my phone, changed it to Marcos' home network credentials, and this worked! We were able to connect to the Raspberry Pi and run the commands.
3-17-22: Today I did a little research on the PCA boards and the I2C LCD and found that we can actually change the addresses of the PCA Boards using the solder pads on the PCB: Page 13 https://cdn-learn.adafruit.com/downloads/pdf/16-channel-pwm-servo-driver.pdf. Moreover, we know now that one PCA board actually has two I2C addresses, 0x40 and 0x70, so when we saw both values on the command prompt, we were actually only seeing one. This could also be why both PCA boards are not running -- they are overwriting each other. I soldered the A0 pads to change the I2C address of one of the PCA boards to 0x41. I need to see if it is necessary to change the 0x70 as well. I also started to install the I2C LCD, but I still need to make the cable for that. It is slightly different in dimension from the other LCD, but it still fits inside the cover, so ne design is necessary.
3-18-22: Today I installed the new LCD screen and started making the cable for it to connect to the raspberry pi.
3-22-22: Today I finished making the wire to connect the I2C LCD to the raspberry pi. The orange wire connects to the purple wire for the PCA Board I2C and the yellow wire connects to the gray wire.
3-23-22: Today I finished the Spring Break Update write up and I did some research on the coding issues we are facing. I also instructed Marcos on how to connect the new LCD wires with the rest of the electronics, which are at his house.
3-24-22 -- 3-25-22: I was not in school.
4-4-22: Today Marcos and I caught up on our progress after break and tried to solve the various issues he faced during testing. First, I tested the PCA wiring connections using a multi meter, and I found that all of the connections were solid. Then, we tried changing various parts of the json file, but that didn't work. Finally, we tried using the old PCA board with the 0x49 I2C address, and somehow the motors worked. So that means that the PCA wires work, the code works, and soldering to change the I2C addresses work. Now we just need to fix the new PCA boards or get new PCA boards.
4-5-22: I was at a dentist appointment
4-6-22: Today, I made the second wire for the second ultrasonic sensor, and mocked up how the wiring would work in the chassis. I also removed the wires for the old LCD screen since we know the I2C one works
4-7-22: Marcos and I did some more testing and decided to replace the capacitors as well as the PCA boards so that we could handle new servo motors. We placed those parts on order, and I researched the appropriate capacitors to buy.
4-8-22: I soldered one of the PCA Boards with the motor pins, power terminal block, and I2C rail, so that Marcos could test it at home over the weekend. I also started soldering the second PCA board.
4-11-22: Today I finished soldering the second PCA board and put on the capacitors. We tested the boards, and they both worked; however, we accidentally burned out one of the servos. We are considering purchasing 4 of the powerful servos and preemptively replacing them on the lower legs of all 4 legs, so that we have enough stall torque to support the weight of the robot.
4-12-22: Today I did a little more research on other servos we could buy and the code necessary for the ultrasonic sensors if we get around to implementing them in time.
Testing Week Break
4-18-22: I was not in school today for class, but I started working on our documentation and slideshow for the showcase.
4-19-22: Today I was able to get another ultrasonic sensor from a friend and sand the front cover to fit the sensor pieces. I will glue them down tomorrow.
4-20-22: I glued down the Ultrasonic sensors to the front cover so now that is fully attached. If we get time, we can implement them into our code. Afterschool, we worked at my house and fixed the code for the project. We discover the source of the issue was that the xBox controller keys from our online source were based on 360 controllers instead of One controllers. We remapped the dictionary keys and the code ran properly. Screenshots of our code and troubleshooting are on Marcos' page. We also figured out the arrangement for the battery compartment to reduce torsion on the power wires.
Initial Motion Testing With XBox One Controller
4-21-22: We did some more testing on the robot, and we found that the Front Left Leg servo motor horn is completely stripped out, which is causing a lot of issues with alignment. We will have to replace this horn.
4-22-22: We continued testing with the robot and preparing for the showcase
4-25-22: We worked at my house tonight on showcase materials, and I make a trifold display of a assortment of pictures of our project to have on our table at showcase. I was also able to download the FileZilla software on my laptop so I should be able to edit the motion_controller.py code and eventually get around to adding stepping motions.
Post-showcase reflection: The showcase went quite well! One of the leg pieces broke, but we replaced it and had it running within 20 minutes. If we were to reprint those parts again, we will re-model the part to be stronger and thicker. Many people were interested in our project, even though the walking functionality was limited. Until the end of the year, we will continue to work on the robot and hopefully make it take a full step.