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; |