Browsed by
Author: dpallerl

Team Status Report 11/9/2019

Team Status Report 11/9/2019

This week we finished designing the power and logic boards for the UPMC. We performed a full review of the components, schematics, and board layout, then ordered both the PCBs and 2 BOMs for each one. The PCBs should get here sometime next week. We also got some more equipment for demo, including an electronic twist throttle for the bike, along with a chain and 2 sprockets to connect the motor for the tabletop dyno. This week we will work…

Read More Read More

Deepak Status Report 11/9/2019

Deepak Status Report 11/9/2019

This week I was unable to do as much due to being out of town. I reviewed the schematics and layout for the SpookTroller (logic board) and SpookPower (power board), along with all the selected components. Afterwards, I ordered 2 BOMs for each PCB so that we have spare parts. I also researched and ordered sprockets, a chain, and associated tools so that we can connect 2 motors together for our tabletop dyno. I will begin working on receiving UART…

Read More Read More

Deepak Status Report 11/2/2019

Deepak Status Report 11/2/2019

This week I worked with Bolaji on getting the motor to spin in both directions after getting the flux observer working. The flux observer functionality is the result of getting the ADCs working, and allows us to spin the motor faster and with higher torque than we have before. While the motor does spin in both directions, it produces more torque and is quieter in one direction. Investigating the code did not result in finding anything that would cause the…

Read More Read More

Deepak Status Report 10/26/2019

Deepak Status Report 10/26/2019

This week we finally got ADC triggering working properly. We managed to do this with a combination of timer synchronization and modifying the manufacturer timer driver function used for initialization. Because we are using center-aligned PWM as discussed in previous status reports, the timer’s counter counts from 0 to 1023 and back down to 0. Every time it reaches 0 or 1023 and changes direction, the timer generates an update event (“UEV” in the above diagram). This update event is…

Read More Read More

Deepak Status Report 10/19/2019

Deepak Status Report 10/19/2019

This week I worked on getting the timers to trigger the ADC. The ADC must be triggered at a specific time in the PWM cycle, so naturally I first tried to generate the trigger from the timer generating the PWM. When I got the ADC triggering properly and data coming over UART, there seemed to be no PWM output. I confirmed this with an oscilloscope, and experimented until I realized I could not get the PWM and ADC triggering to…

Read More Read More

Team Status Report 10/12/2019

Team Status Report 10/12/2019

This week we primarily worked on the Design Review Report, and also got a basic graphing interface, known as ROTATÉ, working to show live motor data in a more useful way. Working on the Design Review Report was useful in that it made us think in more detail about what we are doing and why, giving us a clearer understanding of where we are in the semester. We are also moving into getting a clearer understanding of motor control theory beyond…

Read More Read More

Deepak Status Report 10/12/2019

Deepak Status Report 10/12/2019

This week I spent a lot of time practicing for the Design Review presentation and working on the Design Review Report. The Design Review presentation went fairly well based on the feedback. The next major thing I did as I was writing the Report was reviewing the basics of motor operation. In order to describe the differences between brushed DC motors and 3-phase brushless motors as part of the Report, I found a good source that described the basic operation…

Read More Read More

Team Status Report 10/5/2019

Team Status Report 10/5/2019

This week we were able to get the motor spinning slowly. This involved a number of different things. The first one was bringup of the microcontroller’s timer to output PWM. Another accomplishment this week was writing a rudimentary control loop to spin the motor. We were also able to send information about the voltages and currents over UART. Overall, the motor spinning validates our basic hardware architecture, and we are confident in moving forward both with further firmware development, and…

Read More Read More

Deepak Status Report 10/5/2019

Deepak Status Report 10/5/2019

This week I got the STM32’s PWM working and set it properly. This means making the PWM center-aligned, rather than edge-aligned, and inserting dead time as described in last week’s blog post. The PWM works fine, and Bolaji was able to use it to get the motor slowly spinning. The next thing I worked on was getting UART to work. It was fairly easy to set up in blocking mode, but it ended up causing a problem. The amount of…

Read More Read More

Deepak Status Report 9/28/2019

Deepak Status Report 9/28/2019

The main thing I accomplished this week was looking into the details of the STM32F4’s timer. One of the basic elements of motor control is providing PWM signals to the MOSFETs, and care must be taken in exactly how the signals interact. The high side MOSFET (attached to power) and the low side MOSFET (attached to ground) cannot be turned on at the same time (or they explode), so the timers provide complementary PWM outputs and allow you to insert…

Read More Read More