Joshna’s Status Report 09/23/2023

We spent most of this week developing our design and practicing for the presentations. We honed down our use case to specifically help visually impaired people by allowing them to either enter notes and print that on our website or enter a product and print the instructions for using that product. We also figured out what tools we want to use and how to divide everything up. Our current plan is to use Python and HTML to develop the frontend, use Python for webscraping and databases and communicating to hardware, host our webpage on a CMU server, and use gcode instructions to control a RAMP board which controls the solenoids and the motors that move the solenoid system across the page.

I also started working on the webscraping portion since we were told to work from the most difficult part outwards. I have tried working with many Python libraries including googlesearch, requests, urllib, mechanize, and more in order to figure out how to make google queries in the easiest way. After a lot of debugging, I am only able to get the first google result. There isn’t much information about the generator object type for webpages and it appears like I am getting 0-1 results when I shouldn’t be. I also received a lot of errors with actually accessing a website to begin with but I believe that is because I am accessing the browser directly through code and so google treats me like a bot. I am looking into using other websites/browsers for searching.

I am able to get the first website from google now but I began to wonder what I would do if I were to get more than one result because there isn’t a standard to figure out what would be the best website for each product. I have started implementing using a website like directionsforme that already has lots of product compiled like a database while also using the first google search for any product that is not listed on this website. The webscraping should be easier for products on directionsforme because it is relatively standard so I am focusing right now on the best method for finding the information I want to scrape from each of the websites google returns. I am also considering whether or not I should have a feature that reads back the result and confirms with the user if that is what they want to be printed.

Another thing I have started to think about is how we will send instructions to the embosser. Since we are trying to make this as accessible as possible, we have to make sure that the embosser is an easy set up and that the website can actually send the instructions to the embosser. Wireless printers work by connecting to the same WiFi network as the device that will be printing. There is a RAMPS WiFi adapter so we might think about using that so we can continue with this design. I don’t have experience using gcode but Becky does so I did more research in how it works and it is common to send gcode wirelessly to 3D printers by connecting both to WiFi by using a WiFi SD card. I still have a lot more research to do on the interfacing between the webpage and the gcode output across WiFi.

Since we are still at the beginning of our project, we are on track. My goal is to make the webscraping algorithm work for 50% of the top product searches by the end of this next week. I also plan to get some of the basic html framewok up and running because neither Zeynep or I have much experience with actually building a website so it would be better to start earlier so we have more time to resolve issues. Lastly, our team also needs to make sure we understand the communication between our parts both because that will help define each of our “inputs” and “outputs” but also because it might require us to buy additional components.

Leave a Reply

Your email address will not be published. Required fields are marked *