Low-cost, open-source, variable speed and incline treadmill for studying impacts of neonatal locomotion

Graphical abstract


Hardware in context
Injuries to tendons are common and result in long-term dysfunction [1][2][3][4][5]. These issues have motivated studies to understand the factors that influence tendon injury in adults. One potential factor is overuse injury. To explore the role overuse plays in tendon injuries, rodent (i.e., mouse and rat) models of overuse have been developed using treadmill running [6][7][8][9][10]. The treadmills used in these studies have been modified from human treadmills [11], or have been commercially purchased systems designed for small animals. While these systems work well for understanding impacts of exercise in adult animal models of tendon injury, they are relatively expensive and not appropriate or easily adaptable for studies in developing animals.
Understanding the impacts of mechanical stimuli on musculoskeletal tissue formation during embryonic and neonatal development is of great interest [12,13]. Recent work has explored how paralysis [14] and the onset of locomotor behavior impacts tendon formation in the developing embryo and neonate, respectively [15]. Furthermore, physical activity by the developing neonate has long-term beneficial impacts on muscle mass and levels of inflammatory cytokines at later ages [16]. To improve understanding of how mechanical stimuli from exercise influences tendon and musculoskeletal tissue formation, there is a need for treadmill systems that can be used with neonatal rodent models. Treadmill exercise is advantageous since it encourages consistent physiologically relevant locomotor behavior, and the duration, intensity, rate and timing of the exercise can be controlled [17,18]. However, many of the current treadmill systems do not have enclosures designed for young animals or lower operational speeds. Furthermore, they do not fit inside a standard bench-top neonatal incubator. Another limitation of many treadmill systems is the lack of a transparent belt design or enclosure, which are needed for taking video and gait analysis [19].
To address the need for a small-scale treadmill, a custom treadmill system had been developed [20]. However, to our knowledge, no open-source treadmill systems appropriate for neonatal and postnatal rodent models have been described. Therefore, the goal of this design was to provide a low-cost, open-source, variable speed and variable incline treadmill for application in studies exploring neonatal and postnatal rodent models specifications table. To address this goal, the treadmill was developed, as an interdisciplinary capstone design project largely using off-the-shelf components and open-source technology. This open-source treadmill design offers additional customization for the end user at lower costs. The treadmill not only fits inside a standard neonatal incubator, but also allows user-specified control over speed and incline. A transparent belt and enclosure design allow video recording for gait analysis. Overall, the treadmill is useful for investigating the impacts of locomotor behavior during neonatal and postnatal development.

Hardware description
The treadmill (Fig. 1) consists of a transparent moving belt elevated above a platform where a motion tracking device or camera could be placed. The belt surface can be inclined between 0 and 15 degrees and is driven by a stepper motor that can operate at speeds between 0.5 and 15 cm/s. Above the belt surface a removable and transparent acrylic enclosure contains the subject and allows video recording and gait tracking from the sides and front. An external control box houses the majority of the electronics including an intuitive touchscreen interface. This interface is used for setting the belt speed and run time. Furthermore, the control box is separate from the treadmill; this allows the treadmill to be controlled from outside of a neonatal incubator or another type of environmental chamber. Simple, compact design using widely available components for easy replication Designed for use with smaller and younger rodent models Low overall cost with speed and incline control Transparent design facilitates a variety of video analysis methods

3D printed parts
Support structures for the stepper motor, power supply, and Arduino were 3D printed on a Sindoh 3DWOX (Seoul, Korea) using proprietary Sindoh 3DWox filament. Belt arms were completed using polyethylene terephthalate (PETG) filament and support structures with acrylonitrile butadiene styrene (ABS) (Fig. 2). While a Sindoh 3D printer was used here, most 3D printers with PLA (Polylactic Acid) or ABS material would work as well.

Machined parts
A custom drive roller that is connected to the motor was machined from a single piece of aluminum stock (Fig. 3).

Laser cut parts
The treadmill belt was laser cut out of clear polyvinylchloride (PVC) before being glued into a continuous loop with epoxy. The containment enclosure walls (Fig. 4), treadmill base sides, and control box walls were all laser cut from 1/4 00 thick acrylic sheet.

Electronics
The schematic diagram for the electronic circuitry is shown in Fig. 5. Components include an Arduino DUE, 7 00 TFT touchscreen/shield, DM320T stepper driver, and a NEMA 17 stepper motor. Power inputs for the motor was 18-30 V and the Arduino DUE was 5 V, thus a duel voltage 24VDC/5VDC power supply was used.

Software
All code was written in Arduino's built-in language and requires Arduino IDE for code execution.    PrintedSupport2STL -3D printed base for the power supply. Bolts into ControlBottomWall PrintedSupportSTL -3D printed base for the Arduino DUE/Shield. Bolts into ControlBottomWall Support-ArduinoSTL -3D printed support for the Touchscreen. Attaches to Arduino shield.

Design Files Summary
Motor Mount À 3D printed support for the motor. Attaches to the right outer frame. Upper frame right -3D printed arm piece supporting the rollers and allows for angle adjustment.
Upper frame left -3D printed arm piece supporting the rollers and allows for angle adjustment. Driver Roller -CNC-turned roller with a crown to center the belt and attaches to the motor shaft via a set-screw. Treadmill Base Sidewall L -Easily detachable frame that supports the left belt arm and angle adjustment. Base Sidewall R -Frame that has the motor attached to the rear and performs the same support functions for the right belt arm and angle adjustment. Sideboxwall -Side walls for the containment structure that surrounds the test animal on the treadmill. Laser cut. Frontboxwall -Front wall and back walls for the containment structure that surrounds the test animal on the treadmill. Laser cut.
ControlRightSideWall -Right wall of control enclosure. Laser cut.
ControlLeftSideWall -Left wall of control enclosure. Laser cut. Holds DC fan and toggle switch. ControlFrontWall -Front wall of control enclosure. Laser cut. One edge beveled.  Mill out an appropriate through-hole on each side of purchased front roller.  Press toggle-switch through outside face of ControlLeftSideWall (Fig. 6) Using a Dremel, mill, file, or any capable tool, machine out designated clearance in ControlTopWall for Touchscreen pins (A mill is recommended, but a Dremel is good option). Clearance does not have to follow specified dimensions exactly (Fig. 7), just enough so ControlTopWall lays flush over Touchscreen. Using a table saw, file, or angled jig on a laser cutter (Fig. 8), machine the bevels on ControlFrontWall, ControlTopWall, and ControlBackWall. See Fig. 9 and drawing files for clarification on angles.

Treadmill assembly
Mill out clearance for female EPS cable wing-clips from outside face of ControlBackWall. See ControlBackWall drawing for details. Ensure wing-clips will snap outwards when female end is pressed through. Glue the four side walls together with epoxy. Position on ControlBottomWall to ensure side walls are properly aligned. Secure with masking tape temporarily to hold in place. Do NOT epoxy ControlBottomWall or ControlTopWall to side walls.
After side walls have dried, predrill 4 outside holes on ControlBottomWall (2 on Left Side, 2 on Right Side) through the side walls. This will ensure that securing bolts will not split through acrylic wall edges. Place clear-plastic Arduino base on PrintedSupport. Secure Arduino to clear plastic base, and clear plastic base to PrintedSupport with designated bolts. Fig. 10 shows the placement of PrintedSupport, Arduino/Shield, and Support-Arduino Secure DM320T Stepper Driver to PrintedSupport using two #6 Â ½ 00 sheet metal screws (Fig. 11). Secure PrintedSupport and PrintedSupport2 with six M3 Â 0.50 Â 16 bolts. Secure with M3 nuts where possible (the two bolts at DM320T base may be difficult to secure with nuts. Nuts not necessary in these two spots). Secure Power Supply to Printed Support2 using two M3 Â .50 Â 12 bolts (power supply bolts are shorter to avoid intrusion into circuitry) (Fig. 12).
Attach cable gland to outside of ControlBackWall, securing with attached nylon nut on inside face (Fig. 14). Split EPS cable in half. Strip off about ¼ 00 from ends of 4 wires and attach to A+, A-, B+, B-terminal ports of DM320T Stepper Driver (Fig. 14). Cut off female connector from end of NEMA 17 Stepper Motor. Solder the four wires to the male end of the EPS cable, such that the BLACK wire connects to A+, the GREEN wire to A-, the RED wire to B+, and the BLUE wire to B-. See the circuit schematic (Fig. 5)   Cut off roughly 3 00 off WHITE and GREEN wires of power cord to shorten wires to fit to power supply. Leave BLACK wire long. Attach WHITE wire to N (neutral), and GREEN wire to GND (ground) terminals of power supply. Place four side walls onto ControlBottomWall. Attach BLACK wire from AC power cord to one terminal of toggle-switch. Use cut off, or spare 16AWG wire to attach other terminal of toggle-switch to L (line) terminal of power supply. Attach RED and BLACK DC Fan wires to + V1 and COM1 respectively. Press female EPS cable through inside of ControlBackWall, making sure the wing-clips snap outwards (Fig. 15). Neatly route wires using adhesive wire support clips (optional). Secure ControlBottomWall to four side walls using four M3 Â 0.50 Â 10 bolts. Place ControlTopWall over Touchscreen, secure using four M3 Â 0.50 Â 10 bolts and M3 washers (Fig. 16). Plug in Stepper Motor male EPS plug to female EPS plug. Plug in AC power cord to wall outlet. Switch toggle switch to ON position to power device.

Touchscreen operation
Plug in and power on the device using the power switch on left side of control enclosure, wait for the touchscreen to load. On the touchscreen (Fig. 17), set the desired speed of the treadmill by using the (, <, >, ) arrows (1). Set the desired duration of the trial in hours, minutes, and seconds by using the number pad (2). DEL key will clear the time. If no time is input, timer will default to 1 h. After inputting the desired speed and duration, hit the green GO button (4). While running, the speed or time cannot be adjusted. A small white timer will count down, located underneath the time duration.
To pause the trial at any time, press the yellow PAUSE button (3). While paused, the speed or time cannot be adjusted.
To end the trial early or to adjust speed or duration values, press the red CANCEL button (5).
Press the red CANCEL button (5) at anytime to stop the treadmill. When finished, switch the device OFF using the power switch on the left hand side and UNPLUG the AC power cord from the power source (e.g, wall outlet). All animal protocols need to be approved by your institution's animal care and use committee prior to using the device. Treadmill running should only occur while under direct supervision. Fig. 9. Beveled angles to be cut on table-saw, or other means. Fig. 10. Bolts to secure Arduino plastic base + DUE board/Shield, along with placement of Support-Arduino, which will support the touchscreen once plugged into Shield.

*Electric shock hazard
Ensure the device is switched OFF using the power switch on the left hand side. UNPLUG the AC power cord from the power source before disassembly. To disassemble enclosure for troubleshooting or maintenance, several M3 hex-pattern bolts need to be removed. Loosen 4 bolts on enclosure top wall that connect to the touchscreen. Remove acrylic top. Loosen 4 bolts on enclosure bottom wall to loosen side walls.
With device turned off and unplugged, loosen three AC power cord wires (Black/L, White/N, Green/GND) from the power supply terminals, and the black wire from the toggle-switch on the left wall. Loosen two DC fan wires from last power supply 5 V terminals (Red to + V2, Black to COM2) Unscrew black cable gland from enclosure back wall to loosen AC power cord. Feed AC power cord back out through hole. Unplug stepper motor male EPS plugin from back wall.  Press in on wing-clips on female EPS plugin and press through back wall. Lift up to remove enclosure side walls.

*Electric shock hazard
Before reassembly, ensure the device is switched OFF and the AC power cord is unplugged from the power source.
To reassemble, replace the enclosure side walls. Feed AC power cord through back wall. Secure black wires from AC power cord to the toggle-switch, and the other black wire from the toggle-switch to the L terminal of the power supply. Secure the white and green wires to the N and GND terminals respectively. Tighten black cable gland. Reattach two DC fan wires to last power supply terminals (Red to + V2, Black to COM2). Press female EPS plugin back through acrylic back wall, making sure the wing-clips snap outwards. Tighten 4 bolts on enclosure bottom wall to secure side walls. Replace acrylic top over touchscreen. Tighten 4 bolts to secure top wall.  If acrylic top is too tight or poorly fitting, remove touchscreen from Arduino shield, secure acrylic top to unplugged touchscreen with 4 bolts, then reattach touchscreen pins into Arduino shield.

Validation and characterization
The treadmill was designed to operate with linear belt speeds of 0.5 to 15 cm/s, with a resolution of 0.1 cm/s. The formula used to control the stepper motor delay based on desired linear velocity was a function of the steps per revolution (controlled by the DM320T Stepper Driver) and the radius of the treadmill's drive roller, given by: In Eq. (1), multiplying by 10 6 converts the delay in seconds to delay in microseconds, the units used in the Arduino code. Initial tests showed that at speeds above about 12 cm/s (i.e. where the delay in microseconds became smaller, and thus required more precise timing from the Arduino) were less accurate than slower speeds. In order to verify these results and form a calibration equation, speed tests were filmed using a smartphone's slow-motion video setting. These tests were analyzed in video editing software to count the number of frames it took the treadmill belt to travel a set distance, marked with pieces of tape (Figs. 18 and 19).
The exact time taken to travel the distance between the markers was found by dividing the number of frames by the framerate (in frames per second) of the camera.
Velocity Eqn 3 in centimeters per second was then calculated by taking the distance between the tape markers (measured in centimeters) and dividing by the time found in Eq. (2).

Velocity ¼ Distance Time ð3Þ
Multiple trials were run over a wide range of velocity values. The results were then plotted to find a line of best fit (Fig. 20). The equation of this line is the calibration equation used by the Arduino to get accurate results within 0.04 cm/s. The equation already factors in the steps per revolution (800 steps) and the radius of the drive roller shaft (1.11125 cm).
This calibration allows for the following capabilities and limitations of the hardware.

Speed
Operational belt speeds between 0.5 cm/s and 15 cm/s, with precision of 0.1 cm/s. Speed settings accurate within 0.04 cm/s. Belt speeds above 15 cm/s can be achieved by removing a limit in the Arduino code, but the belt speed will only be accurate within 0.25 cm/s.

Runtime
Device can run a single trial for a maximum time of 10 h, with timer precision of 1 s. Device can theoretically be turned on and run continuously for a maximum of 40 days. (Not recommended)

Size capabilities
Maximum treadmill belt area (with acrylic containment walls) roughly 20 cm Â 11 cm. Treadmill can be placed up to 100 cm away from control device.

Recommended changes
The control enclosure could be modified to allow for more space between components and the acrylic walls. This would make construction, wiring, and maintenance of control enclosure easier, since the current design minimized the size. If a custom cut acrylic control enclosure is not possible, a pre-made box can be purchased (such as: https://www.digikey. com/product-detail/en/bud-industries/BT-2742/377-1548-ND/1640958). However, this would require a redesign of the printed internal control supports. Note that a pre-made control enclosure that is also angled is not easily available in the  dimensions required for all control-components. A right-angled box can be used, and then modified with angled legs if desired.
A critical component in the design of the treadmill system was the motor selection. Originally, a Servo DC motor was selected to drive the treadmill belt. A DC motor does not require a fast microcontroller, so an Arduino MEGA was originally used to run the system. However, due to the wide range of speeds specified by the design criteria, most conventional DC motors would not have adequate torque to run at both the lowest speed (0.5 cm/s) and the highest (15 cm/s) speed, without a gearbox or transmission. The NEMA 17 stepper motor was selected to enable this wide range of speed control and eliminate the need for a gearbox. The timing precision required by both the stepper motor and the touchscreen to run in tandem demanded a microcontroller with a faster processing speed. Therefore, the Arduino DUE board was used because of its faster processing speed.
Updating the touchscreen timer requires a relatively large amount of processing power. The more pixels being changed at any moment, the more lag will be present in the system. To solve this problem, only a timer with small font on the touchscreen dynamically keeps track of the time remaining in real-time. Another possible solution is to integrate a real-time operating system (RTOS) into the code (such as FreeRTOS for Arduino) to allow both the timer and the step-function of the code to run in tandem. Another solution would be to incorporate a secondary Arduino MEGA board to run the timer, while the Arduino DUE runs the stepper motor. However, this would require large modifications to the code to split-up the functions between multiple boards.
The Arduino DUE board outputs 3.3 V from its pins, unlike the Arduino MEGA, which outputs 5 V. The components chosen were compatible with the Arduino MEGA at 5 V. For all components to be fully compatible with the Arduino DUE, the following components are recommended: NOTE: Changing components would require 3D printed supports and enclosure walls to be modified to accommodate new sizes/hole locations.

DM320T
Stepper Driver (requires 5 V logic signal) -Replace with a stepper driver that only requires 3.3 V logic signals.
Step resolution of at least 800 pulses/revolution recommended.

Future work
Future studies will use the treadmill to explore the impacts of duration (run time), intensity (variable incline), rate (variable speed) and timing (neonatal age) of exercise on tendon and musculoskeletal tissue formation in developing neonates. Prior work demonstrated that neonatal rats as young as postnatal day (P) 1 could be exposed to a moving treadmill [20]. However, at these young ages, the subject needed to be suspended over the treadmill belt. The acrylic containment walls were designed to be removable so that neonates could be suspended over the belt using the previously described soft harness system [20]. For neonates that display full weight-bearing locomotor behavior, typically beginning around P10 for rats [15,21,22], an external stimuli may be needed to provide motivation for treadmill running [17] and could be added to the acrylic containment walls in future studies. Additionally, based on the provided engineering drawings and controller designs, the treadmill system could be scaled-up through increased track length and motor selection for use with more mature animals.

Human and animal rights
NO human or animal studies were conducted in this work.

Declaration of interest
The authors whose names are listed certify that they have NO affiliations with or involvement in any organization or entity with any financial interest.