Lecture Assignment 4: Motor Performance With Non-Optimized Dual Shaft Structure
Lecture Assignment 4: Non-Optimized Dual Shaft Structure
Overview:
In this assignment the hardware is performed in pairs. A non-optimized dual shaft structure is built, and the performance is measured. The theoretical model is updated to incorporate the added inertia and friction, and compared to the experimental results.
Overview
Calculate the equation of motion and equivalent inertia of the dual shaft system as reflected onto the motor. Use the method covered in lecture for the mass raising by a pulley.
Draw separate FBDs for both shafts.
Show equations of motion for both shafts.
Show geometric constraint.
Solve for acceleration of motor shaft in terms of: inertia of each shaft and motor torque (friction can be neglected).
Show the equivalent inertia reflected onto the motor.
Theoretically estimate the friction in the system. Separately estimate the friction in Nm as applied onto the motor for:
The bearing friction in shaft 1 due to the weight of shaft 1.
The bearing friction in shaft 1 due to the Timing Belt tension. Use worst case condition of startup torque.
The bearing friction in shaft 2 due to the weight of shaft 2.
The bearing friction in shaft 2 due to the Timing Belt tension. Use worst case condition of startup torque.
The friction from the pot attached to shaft 2.
Build the Non-optimized dual shaft
Operate the dual shaft structure at 100% duty cycle until it reaches its terminal velocity.
Update your theoretical simulation of the system using the values from step 1 and 2.
Plot the theoretical and experimental velocity profile on the same plot.
Calculate the initial acceleration and terminal velocities of both the theoretical and experimental velocity profiles.
Discuss reasons difference between the experimental and theoretical.
Update the parameters in your simulation using the data from the previous step, and explain your approach.
Plot the new theoretical simulation and experimental velocity profile.
Start your optimization log by entering the time to reach 180 degrees for current configuration. Keep a log of improvements over the next 2 weeks as you optimize your design.
Quadrature Encoder Arduino Code:
encA_now = digitalRead(encA);
// Check if Encoder A is transitioning from 'LOW' to 'HIGH' State
if ((encA_prev == LOW) && (encA_now == HIGH)) {
// Check if at that state the Encoder B is 'LOW' (CCW)
if (digitalRead(encB) == LOW) {
encPOS--;
}
// If Encoder B is 'HIGH', then the direction must be CW
else {
encPOS++;
}
}
// Set the current Encoder A reading as the previous one
encA_prev = encA_now;