Progress report for week ending on March 29, 2018

Atmel Studio

Monday March 26, 2018

We successfully put a test program on the microcontroller that toggles PORTL. We set fuses to use the external 16 MHz crystal instead of the default 8 MHz internal oscillator.

- Spencer, Evan

Plan for the week: Wednesday: finish PWM output, work on LCD programming. Goal for presentation: showcase the program is implemented and the parts we have now (capper, clamps, and stepper motor). Progress on the microcontroller program is coming along, but was slowed down this week by a windows issue. My Visual Studio installation broke over break after updating my machine, so Atmel Studio does not function either. I spent multiple hours trying to fix this, which included trying to repair my Visual Studio install, reinstalling the version I had, upgrading the version to 2017, and shuffling around toolchains and platform supports in the installation. Since I didn’t actually have enough space on my 2-drive setup to install Visual Studio, since at least for Visual Studio 2017, the bulk of the install has to sit on the system drive regardless of the install path, I also had to clear data from my C drive to open up space. Since I only have program files on the C drive, this took quite a while, as I was basically freeing up about 20 gigabytes of storage space 50 to 100 megabytes at a time. After this, Visual Studio is now launching, which it wasn’t before, but Atmel Studio is still not installing properly. Since I spent multiple hours trying to get this installation fixed and haven’t been able to, I am temporarily coding with the Arduino IDE, since that offers a web-based platform that Windows can’t mess up. While I understand that the course frowns upon using Arduino, this solution seems to be necessary for now to make any progress. As for the program itself, I currently have the “skeleton” of the filling process done. The program as set up polls for an input and steps through what we expect the filling process to be. Interrupts are not enabled at the moment. Output functions were designed to be generic, and are split into differential, AC, and DC categories, which was done to be able to make the code more readable. I am hoping to have the driver and read functions tuned next week, and will then move onto LCD output, then to interrupt-driven control. -Evan

Wednesday March 28, 2018

I defined outputs for the motor drivers for the microcontroller, but found an issue with the PCB in the process. Due to an issue with linking a custom library, EAGLE did not link the 5V logic input of the DC motor driver to VCC, since apparently the VCC label generated for the part was not the actual VCC of the board. As a result, we are discussing plans to solder a wire to the 5V pin on the DC motor driver to supply power. If the adjacent pin was an enable, we could likely have used a solder bridge, but since it is a direction pin, we need to solder a wire to the pin. However, this should not have any major consequences for our project. I - Evan <\p>