Here is a descriptive list of each of the components within the bicycle theft detection device. Each component was chosen to specifically meet a desired functionality for the device
Arduino MKR GSM 1400
This board was chosen specifically for its integrated GSM module, low power consumption, and small form factor. The integrated sim card and computing capabilities allow for computational decision making and the desired functionality.
Arduino MKR GPS Shield
This GPS shield is compatible with MKR boards. It has an onboard battery to aid with faster starts as it retains a connection with satellites even when not powered by the main Arduino board.
Grove 6 Axis Accelerometer
The Grove 6 axis accelerometer has a high resolution and allows for accurate tracking and identification of movement when it occurs.
Solar Power Manager
This board manages incoming power from the battery and solar panels. It powers the Arduino through a 5V 1A USB port.
Solar Panels
These solar panels provide 60mA of current at 5V to the device. With the orientation of the 4 panels on the housing, the panels provide 150mA of current to the device on a sunny day.
Battery
This is a 3700mAh 3.7V Lithium Polymer battery. It offers an excellent mAh/dollar rating and fully powers the device for more than 37 hours in sunless conditions.
The system is programmed to operate under different configuration modes that are triggered by logical statements within the code, and are activated when certain conditions are fulfilled. The various operating modes include a monitoring mode in which the device is monitoring the location and motion of the device, as well as a theft mode that is activated via SMS when an event of theft is occurring.
Riding mode is designed not to bother the user in case they are using the bicycle. It does not monitor any sensor readings but checks for incoming text messages every 10 seconds. This is so the system can receive the command via SMS from the user to turn off Riding Mode at any moment.
Monitoring Mode is designed to be used whenever the bicycle is being parked. Once turned on, the system carefully monitors the accelerometer reading which passes through a filter to minimize noise, and as the reading crosses a certain threshold for five times, the system turns on Warning Mode. During Monitoring Mode, the system checks for incoming messages every 60 seconds.
Warning Mode is designed to alert the user for a potential theft activity. When activated, the system sends out a caution to the user and asks for the desirable interval of the automatic SMS update, which is by default set to 10 seconds. The automatic SMS update includes the latest location/speed of the bicycle and acceleration count. Acceleration count is the same as what is used in Monitoring Mode to trigger Warning Mode. It counts how many times the acceleration of the bicycle has exceeded its threshold. By including this in the update, the user can determine whether Warning Mode was activated due to an actual theft activity or by someone accidentally tapping the bicycle by mistake as the count would keep increasing in case of an actual theft whereas the count would stay the same in case of a false positive.
Theft Mode is designed for a chase after the bicycle gets stolen. It can be activated only by the user via SMS command, and the system sends out the automatic update of the latest location/speed of the bicycle as frequent as the Arduino board can handle, which is approximately evert 3 to 4 seconds.
Functional Requirements for Housing Design
Secures tracking device to bicycle
Avoids suspicion about the saddle bag containing a tracking device
Contains a secret compartment for tracking hardware
Contains space for personal effects of user
Allows for quick removal of saddlebag and access to storage
Heat, water, dust, and impact resistant design
The saddlebag needs to be rigid due to the vibrations and forces that occur when riding a bicycle. Bumps in the road, dropping the bike, and impulse forces from others attempting to lock their bike next to the users are just a few examples of what is possible. With these considerations in mind, an aluminum collar, cantilever beam, and gusset were welded together to keep the saddlebag secure and rigid.
The final design of this project is a bicycle seat post saddlebag that contains the tracking device. The saddlebag features a spring assisted hatch and linear sliding mount for easy removal and access to storage or electronic components. A single locking mechanism secures the linear slider and hatch with one external lock. Solar panels are mounted externally on the hatch for a potentially self-sustaining battery.
To keep the hatch closed and liner slider in place, a lock and lock flange were added. The circular disk shape allows the flange on the end of the cantilever beam to align perfectly. Once the housing is in place on the linear slider and the spring assisted hatch is closed, the housing can then be locked in place. This locking mechanism secures the linear motion of the slider and rotational motion of the hatch.
A sleek design was achieved by keeping the linear slider concealed within the saddlebag. On each side, secret storage compartments were included to conceal the tracking hardware underneath the false floor of the general storage compartment. Snap fit tabs were used to allow the user to remove the false floor to charge the battery or update microcontroller scripts. Cable routing has been included via loops from the hatch to secret compartments allowing all wires to be concealed.
The housing was made weather resistant by adding cooling vents on the front of the housing and neoprene trim along the hatch. The spring assisted hinge and cooling vents are located directly underneath the seat removing the need for any trim along these portions of the housing. To avoid warping due to heat, the housing was printed in carbon fiber nylon filament with a melting temperature of . All solar panels were epoxied to the hatch for a seamless finish while reducing water puddling on top of the housing.
The solar power manager (see above) is not perfectly efficient. Inefficiencies in the circuitry cause 38% of the power captured by the solar panels to be lost before the current reaches the Arduino. On a sunny day, this means that the 150mA produced by the panels only ends up sending 93mA to the Arduino. This figure is still greater than the 77.5mA required in monitoring mode, but not by much.
The solution to this problem is to add a switch to disconnect the Arduino from the battery so that when it is not in use, it isn't draining the battery. So long as the bike is turned off while stored at home and locked up in direct sunlight, the battery will not be drained.
(Above) Current draw in mA for the device in its various modes.
(Below) Current production from solar panels in various weather conditions
(Below) Switch location in final device