From ESE205 Wiki
- Week 1: This week we focused on the design of our enclosure and we agreed that the best set up is a V-shaped entrance so that the critter can enter from a wide angle and not feel trapped in the process. Also, we spent time between classes observing the behavior of squirrels and how close we can get to them without them running away. We found that if food is provided to the animal, they are more than happy to consume starch products and nuts. Specifically, the Eastern Gray Squirrel prevalent on the WashU campus like to consume walnuts even though we have spotted them "dumpster diving" in outdoor trash cans and eating whatever they can find. We also found a project that is very similar to us on google, except the inventors were targeting birds. Here is the link to their project.
- Week 2: This week we changed our project idea to comply with Washington U. regulations regarding animals. We spent the week planning out our entire project timeline (outlined in our Gantt Chart) and finalizing (pending approval) our design/ set-up. We immediately want to order our supplies and stay on schedule with our timeline. (Our new project idea is to capture thieves red-handed. Every time you open the drawer, a sensor will be triggered that calls upon a hidden camera to snap a photo of the thief. Our plan is to insert this hidden camera inside a teddy bear sitting on top of the drawer. We feel the teddy bear will hide the electrical wires and cameras discretely.)
- Week 3: We got our project approved on the evening of Friday Feb 24th, 2017. We immediately ordered all supplies that we would need for our project and collected inventory of parts that we said we could use from the lab. We also got our own locker for our parts. Since the approval process was delayed, this was the most we can do this week.
- Week 4: We downloaded Python and began coding for our project using a source code from Feeder Tweeter. To become more familiar with Python code, we completed introductory lessons on Code Academy. We also designed the support for our sensors on Solidworks. While designing, we knew we had to print out holes in the base of the support in order for us to attach the HC-SR04 sensor to it. Therefore, we looked up the dimensions of the specific sensor online from the manufacturer. This process took less time than expected since Will had experience with the program and was able to guide us on how to use all the software tools. We were able to save the solidworks design and print out the pieces successfully. With the additional time we had, we also researched how the breadboard works and started to familiarize ourselves with wiring. Lastly, we edited our wiki page to adjust for some aesthetics regarding our Ganntt Chart and minor typos.
- Week 5: Originally, we 3-D Printed the HC-SR04 sensor support with holes based on a template online. Once the pieces were printed out, we realized that the distance between the holes was not correct for our specific model. To fix this we drilled holes on our own and connected the sensor to the support by putting tiny nails through the holes and bending them at the end which kept the sensor solidly in place. We also ordered a raspberry pi charger because the school did not have enough in supply. The coding part of our project was on hold until we received the charger because the raspberry pi had to charge while in use. We also saw videos on YouTube on how to set-up the raspberry pi and read over the tutorial on the wiki page. We could not test or calibrate the sensors because we need to connect them to the pi which is not available at the moment.
- Week 6 : SPRING BREAK
- Week 7: This week the charger, the pi camera and the connection cable came in the mail. Having the charger, we tried starting up the raspberry pi in lab. The first issue we encountered was that the light on the pi would not turn on when the charging cable was connected. Fortunately, we we were able to find another pi in lab that was not being used. The light worked on this pi, indicating it was charging this time, but we could not find the username and password associated with the SD card installed in that pi as the general introduction password we found online did not work. Then, we had to use our original SD card in the new raspberry pi, but it had to be configured first. From the tutorial and videos we watched before spring break, we tried to install the initialization files from the raspberry pi website onto our blank SD card. Again, we encountered another problem because the files extracted from the website were too large for the microUSB chip we were using. Both of us were in lab for 3 hours in one day trying to delete current files on the chip and waited for the files to download. Each time, the installation crashed when 90% of the needed files were downloaded. This week was very frustrating as we cannot move further with our project until the raspberry pi is up and working.
- Week 8: We had to catch up with our planned goals because last week we had too many problems. This week, we finally were able to get the Raspberry Pi up and running. We found the SD card converter and were now able to download the source code files (feeder tweeter) so that we could actually use the Pi. We were able to edit the code to function for the purposes of our project. We started assembling the drawer and planning where we would position the Teddy Bear and began positioning the sensor supports to see if structurally it would hold. We also started connecting the wires from our breadboard to our Pi but did not finish this week.
- Week 9: This week we continued integrating the sensors, camera and other wiring from our Pi to breadboard and double checked the wiring was correct based on a model we found on the feeder tweeter website. After this, we began testing running tests for our camera and sensors individually to ensure our system's components were working based on our code and made corrections in the code wherever necessary in order to ensure we could achieve consistent results (testing / debugging). We concluded testing this week and our system was in fact up and running and showing consistent results. We decided to switch the order in which we would continue our project. This week we decided to continue with the coding aspect so that we could publish our pictures to social media. We created a twitter account to actually post the pictures and began with the API procedure so that our Pi could automatically post the pictures it captured to the website. We had to edit our code so that the picture file name would be different using a counter(instead of it reseting itself after every snap) and that only some pictures would post since it our Pi is programmed to capture pictures every second the drawer is open. We haven't finish testing whether the posts to Twitter works and we plan to accomplish that next week in addition to transferring all our hardware to the actual setup position for presentation. If next week we can finish all of this, we can then begin our stretch objective of integrating an alarm system. Thus it is safe to assume that we are on track with our objectives, goals, and Gantt Chart.
- Week 10: After we ensured that all sensors were running from our tests last week, we began glueing and taping all components to our drawer and adjusting the wires accordingly. We shortened the wires to ensure nothing short circuited and added a white banner on both of the sides to ensure that our wires inside the box remained hidden to the outside viewers (our box was transparent so it would be weird to see that from the outside). We also placed a wooden stick on the drawer and created an incision underneath the tail of the teddy bear where we would inset the wooden stick through the cavity we created. This would ensure that the teddy bear was always in an upright position. We ensured that all mechanics of the project were running soothingly and everything was correctly positioned so we could open and close the drawer smoothly and then finalize all modules to then complete a series of tests the week before demo day.
- Week 11: This week we tried to create a system where both sensors were running simultaneously and either one would trigger the snap shot. Our idea was that if the intruder covers one of the sensors with one hand and steals with the other, that he will still be caught. We struggled with this because although we replicated the wiring exactly from the feeder tweeter model, we used the wrong resistor seeing that the color coding was very similar. Thus, when we realized the issue we were quick to fix it. Also we had to fix our code so that the pictures would not all store in the Pi in case the PI ran out of memory. So, we set our code to delete pictures every time they were posted onto twitter. Also we set a maximum to the code of ten pictures at a time, in case the drawer was left open. While we were conducting a series of our tests there seemed to be a surge of power / voltage into our pi which ultimately fried our pi and sensors and nothing worked, our pi couldn't even turn on. First we had to run a series of debugging tests to identify the problem but then we realized that it was a power surge that fried everything. Luckily, we had backup sensors and a backup pi to use and had uploaded most of our code to GitHub. So, we had to undo the sensor from the sensor holders, replace them, and reconnect all the wiring. WE also had to redownload all the software we would use on the pi so that we can then run our code that we had to edit. We downloaded Python 3 and twython and had reconfigure all the twitter API stuff so we would be able to post our pictures to twitter. Since we only had one sensor that would actually work in our demo, we had to change our code to only be reading for one sensor. But, if we had an extra sensor we would've been able to demo with two sensors and code code running for two sensors.
- Week 12: We became very familiar with the Demo space and practiced our demo and accommodated our setup materials to the demo environment. We taped wires behind the TV for aesthetic reasons and to facilitate the motion of our wires. We also made our project board describing some of the problems and solutions that we had and added fun pictures of ourselves working on the project to add to convey a fun meaning behind our demo. When we demoed our project, we posted a total of about 200 pictures to twitter where we exposed some thieves including Dr. Gonzalez, Dean Kroeger, and Dean Ramsay. It was a very successful Demo and the twitter page amassed many retweets and followers from fans of the Lopata Gallery demo session, including three retweets from the official verified WashU engineering Twitter account.
- Week 13: We worked on the final report guidelines, which included finalizing the Weekly logs, adding captions and perfecting the wiki page, as well as publishing all our source codes, describing the modules of our project, and creating a HowToPage for the skills we learned. This was a very difficult process to do considering all the work finals that we had to prepare for but we managed to complete the task.