Initial Project Data and Modeling


Since we have completed our initial testing of the shock dyno, we were able to focus the entire two hours of lab on our project. While Les and Eric discussed the progress in developing their control loop with our GSI Spencer, Grace, Justin, and Christy worked on gathering more data to help characterize the temperature system. In order to see the heat generation at lower speed, the group gathered temperature data at 30 second time intervals while the system ran at 30 RPM with the compression and rebound valves fully open. After 20 minutes of observing the shock temperature raise, we sped up to 90 RPM to more quickly heat the oil so that it’s cooling properties could be observed. After another 20 minutes at 90 RPM with open rebound and compression, the temperature of the shock had reached 55 C. Then the shock was allowed to cool back down at 30 RPM and data was collected every 30 seconds to characterize the cooling pattern. After 20 minutes, the shock was turned off, but we continued to measure the temperature as the shock cooled. Hopefully the data gathered in lab this week will help Eric determine the gain values for his PID controller.

Shock Temperature Model

Shock Temperature Model

Thanks for reading!
-The Hot Shocks

Individual Thoughts


This week I again focused on fitting the data so that we could determine our upper and lower bounds for temperature. Also, if we can estimate the steady state temperatures for a given shock setting, that steady state value could be useful in calculating the energy that is added to the system through the work done by the shock, which would help use to spec out the heater. For our minimum work case (30 RPM), I found that the steady state temperature is 30-35 degrees Celsius, whereas for the maximum work case scenario (90 RPM) is about 50 degrees Celsius. For these temperature values, we can equate Qgen = Qconvection so that we can determine the heat input to the system for both 30 and 90 RPM. Once we know how much work is required to heat the shock to these steady state temperatures, we can then determine how much more must be added to bring the shock’s temperature up to whichever given temperature we choose. Hopefully these temperature values will help us in characterizing the heat transfer of the shock.

90 RPM steady state temperature (click to zoom)



Although I couldn’t make it to lab this Tuesday, I tried to make my presence known from afar. My work was mainly focused on estimation of the heat transfer processes within the shock, such as viscous heat generation in the oil, heat conduction through the aluminum body, and convective and radiative heat loss from the aluminum shell. The main challenge I’ve been encountering is the calculation of a heat transfer coefficient. The sinusoidal motion of the shock body does not lend itself directly to either forced or free convection. Using Grace’s steady state temperature bounds, I am attempting to solve for an effective heat transfer coefficient by equating the heat generation within the shock to the heat loss terms due to radiation and convection. Hopefully in the coming weeks I can more fully commit myself to The Hot Shocks and make up for my brief absence. I’m excited to see this project start to come together!


I spend this week’s lab focused on the first-principles derived model for the plant. Using Newton’s law of cooling gives us a first-order representation of the heat transfer in the plant. Fitting the k value will give us a good representation of the convective transfer in the shock, and using a data-driven k means we don't need to worry about the particulars of the convective processes. This weekend I'll be putting together a model for the controller and I'll include the feedback loop with PID gains so that we can start tuning the system in simulation. We also need to order the heat blanket we intend to use, and get our microcontroller setup so that we can start working on the hardware.


This week in lab I focused on gathering data that will allow our group to better understand how the operation of the shock affects the temperature of the oil in hopes of determining how to better regulate the system. Measuring the temperature at 30 RPM with fully open compression and rebound allows us to gauge a minimum steady state for our project since this is the smallest amount of work that the shock can employ. Looking at the amount of heat that was generated by the shock compared to time, it is apparent that the oil does not heat quickly without a large work input. Since whichever heat blanket we finalize on using will not cover the entirety of the shock, I think that it will be necessary to develop an initial procedure for heating the shock to a certain value by running the dyno. Since the temperature ramps up most quickly at 90 RPM with fully closed shock and rebound, I believe that this is how we should initiate use of the shock dyno in order to more quickly reach a steady state temperature. Since our design needs to be modular on the shock, one solution for easy addition and removal of the heater would be zip ties since they will hold it tight and can be removed easily. We just need to verify that they will not be overheated by whichever blanket we chose.


This week I worked on refining the plant model for the shock dyno.  While the general shapes of the responses generated were correct, the time scale and temperature scale were not.  In order to correct for this we are utilizing parameter identification.  We took some baseline data with some of the variables held constant to determine the parameters.  In addition to improving the plant model, I am beginning preliminary work for a PD controller.  Currently the simulation uses a thermostat type controller which is simply on or off.  By implementing H bridges we should be able to control the heater current, and subsequently the heat flux into the shock from the heater.  This means our actuator will be proportional instead of binary which warrants the use of a PD controller instead of just a relay.



In lab this week, I gathered heating and cooling data over 20 minute periods. I am working on using this data to improve the gain values in our model. I’m working with Eric to use least squares fit method between solutions to our model based differential equation and actual heating/cooling data to find better gain values for our model. This will allow us to have a data driven and first principles temperature model of the shock.