We went back to work on the Sunday after the competition. Throughout the day we did a lot of test runs and we were able to pick up the crown every time without a problem. It was returning the crown that was still giving us issues. There were problems with the alignment of tape that prevented us from dropping the crown correctly. There was weight issues that we hadn't considered after picking up the crown. And there was also issues with the back bumper having too much of a sharp corner that we were getting stuck on it when we tried to align ourselves by backing up into a wall. These issues were all addressed and after a couple checkoff runs we were able to complete the task. Now, we get to rest.
0 Comments
We were forced to take a day off because the field hadn't been put back together yet. I managed to finally run some errands. We all got a chance to finally sleep in.
We started doing test runs and tried doing some modifications to the code to be more robust. Things weren't working and we still had a lot of veering to the left. We messed with our battery voltage equation to run the motors at a more constant speed. This changed our traveling speed pretty drastically and we realized that we would also have to change all of our timers now. Instead of doing this we instead loaded up our previous working state machine and tried doing a few test trials. Immediately our robot started working. We were driving to the crown, picking it up, driving back to the home castle, and placing it down. This only happened while we were doing test trials. As soon as we tried to go for checkoff, we saw all of our corner cases. We didn't get checked off but I feel like we made progress today.
We found out that we were loading the wrong hex file in the DS30Loader and we saw that we started finding the crown again after we started loading the right file. We did a few runs and started finding the crown consistently. We made further adjustments to the crown grabber so that the crown wouldn't fall off to the side.
We didn't make much progress with the field today. We made a few changes to the placement of the wheels and we started seeing a lot of change in how our timers triggered. We figure that it is too late to make major modifications to our state machine. We are going to try to properly align our wheels again to fix for the veering. We are going to test after the hot glue on the wheels dry and after that we plan on calling it a night and coming back in in the morning.
We worked late into the night and we all started feeling pretty tired so we decided to call it a night at about 5 AM. We spent a lot of time trying to write code to take into account for dead bot only to scrap it. We also mounted our beacon detector in such a way that the heat sink on the voltage regulator would hit when our robot backed up into walls. After some runs we noticed that we no longer detected the beacon and found that the voltage regulator had lose solder joints. We got that fixed and added in some stake headers to more easily connect it to power. During the day today our robot was in the shop. We made some other mechanical fixes. Our wheels were not aligned properly so we took them off and printed new wheel spacers and reattached our wheels. We also shaved down our arm so that we could slide into position more easily to pick up the crown. We also ended up removing the side bumpers. One of them cracked and so we removed the whole part. Our robot doesn't seem to work too differently without them. We also rounded out the rear bumper so that we wouldn't get caught on walls .
Didn't do the full 180 after detecting beacon, which caused it to go into ruling castle at an angle and so it didn't align properly. Driving down hallway, we hit tape and it sent us into a random castle. We are now thinking about redesigning our arm to allow for a wider angle when we are driving towards the crown.
We spent a lot of time making sure that our hardware was working very well before we started on the major part of the coding, the state machine. This helped out a lot because once we got our robot on the field we didn't run into many hardware problems. We have had to make adjustments to our design as we see it run along the field. We have changed the front bumpers to include angled extensions to give us a wider range for a front bump. This allowed for a simpler design in hardware and in software because at this point we only make use of two of the bumpers when exiting out of the castle (along with the tape sensors). At the time of writing this we are able to exit out of the castle, navigate through the field, find the ruling castle, and pick up the crown. Right now we are trying to get our bot to return to the home castle. We have also changed the arm. Our initial design had a narrow opening on the arm and th
All the sensors are working at this point. We pulled an all-nighter to design a new beacon detector only to find out in the morning that our old one was working. The arm is attached and moving, and the motors are responding to bump events. We started writing the state machine and the first problem we encountered was with the motors, only one of them was turning. We ran our test harness to see if the problem was with the hardware or the software. The motors were fine, and we found that the error was within the software. The second problem we had was that the we were triggering a FRONT_BUMP event on the closing of a switch and on an opening of a switch. We only wanted this to happen on a closed switch. We rewrote the event checkers and had it transitioning correctly.
We don't have our robot ready on beer check off day. We have our robot responding to bumps pretty well. We're running our motors at a duty cycle of about 40% with a frequency of 1kHz. There is a slight difference in the two motors so we have to run the left one at 35% and the right one at 40%. We've added in 0.1 uF capacitors across the leads of the motors to help reduce noise. We also wrapped the wires from the motors to the H-Bridge with a coil that has one end connected to ground and the other end open. This was also added in to reduce the noise levels.
|