Software apps and online services
Have you ever been in a rush to class and wished that your bike could lock or unlock itself on its own? Our group, containing members Cherokee Hall, Joshua Woods, and Jack Donoghue, have developed a solution for you! Not only that, but the simple Bluetooth remote also displays time, lock status, and the temperature at your bike.Background:
In an ideal world, most of our everyday items would be "automatic" or occur on their own with little to no assistance from the user. Additionally, such tasks would ideally save the user valuable time that could be spent on more tedious tasks. With this in mind, our group decided to take on a project that we have yet to see marketed or tackled; a proximity bike lock.
In order to fulfill this project we utilized three Particle Argon’s all tasked to handle a specific role. Attached to the bike itself, one Argon serves as a sensor cluster; gathering temperature, humidity, and motion data. In addition to this, an Argon in charge of locking the bike is also located on the bike. This Argon constantly scans for a unique Bluetooth signature in order to lock and unlock the bike autonomously. The third Argon acts as a remote and stays on the person; displaying date, time, temperature, and lock status. This beacon/remote constantly sends out a Bluetooth signal so the bike is locked when you are away from the bike.Important Questions:
What problem are you solving?
Security is key, but it can often be a lot of work. Our goal for this project was to create a smart lock that ensures peace of mind while simultaneously requiring absolutely zero input from the user. When integrated on the bike and deployed, it disables the use of the bike and allows the user to monitor its status at all times. Additionally, without having to leave the comfort of their home they can check the weather conditions surrounding their bike or motorcycle and determine whether or not it is prime riding weather.
How is it useful?
Protecting your belongings against theft is crucial. Our lock provides fully autonomous, hassle-free security anytime, anywhere.
Why would someone want it?
This product is a necessity for modern security. Not only do you have constant access to the status and condition of your bike, but your bike is always secure. Never forget to lock your bike ever again.
What makes your solution novel?
No product exists with 100% input-free security, automatically locks and unlocks for you and only you, and displays conditions for you anywhere anytime. While this product is centered more towards serving a bicycle or motorcycle, the concept of this product could be implemented in a plethora of other products; such as strollers and wheelchairs. The versatility of this concept allows it to be utilized in multiple industries.
How are your newly acquired IOT skills allowing you to bring such a solution alive?
The internet of things (IOT) interconnects sensors and computing devices to the internet, allowing for live communication of data and events anywhere with WiFi. Advantages lie in instant data monitoring, accessibility, ease of connections, automation, control, and much more. Understanding and implementing IOT serves to improve data acquisition and analysis. With data and communication being broadcast to the internet, monitoring, troubleshooting, and communication between devices becomes much easier.
A fundamental understanding of how sensors operate was obtained throughout this project while the Argons served to improve our practical coding ability astronomically. Our problem-solving skills were continuously tested throughout the project in mechanical, electrical, and software engineering. Overall we believe the implementation of this proof of concept met and exceeded expectations, and could potentially be a profitable and marketable product.How it Works:
The primary sensor cluster utilized a combination of temperature, humidity, and PIR motion sensors connected to a Particle Argon. These sensors were powered from the 3.3V power supply from the Argon. The temperature and humidity sensor served to output its gathered data to the D2 pin. The Argon supplied 3.3 volts to the sensor while the adafruit library converted the readings at the D2 pin to a temperature and humidity value. Afterward, both measurements were plotted using ThingSpeak to display live graphs of the measurements. Readings were actively published every 30 seconds in order to update the OLED’s displayed temperature. Upon a successful subscribe and publish, the beacon returns a receipt that the data was gathered and subsequently flashes an LED on the sensor cluster Argon.
The temperature and humidity sensor served as an indication of riding conditions, while the PIR motion sensor helped alert the owner of any disturbances to their bike. If the bike is disturbed, a high voltage is sent to the D4 pin, and an alert is published.
The final Particle Argon was designed to be kept on the person to determine proximity. The OLED beacon serves as an automatic remote or key fob for the bike’s lock and requires the user to take it with them while the other Particle Argons are attached to the bike. The OLED beacon Particle Argon was tasked with communicating with not only the sensor cluster Particle Argon but the locking mechanism Particle Argon as well.
The primary purpose of this Argon was to subscribe and display temperature data to the OLED, return publish events as acknowledgments of data received, and serve as a Bluetooth proximity output for the locking mechanism. In order for the OLED screen to properly display the temperature readings the GND, or ground pin, of the OLED had to be wired to the ground pin of the Particle Argon. The screen was powered via the Argon’s 3V3 power pin. To display the data readings properly the code utilizes the I2C protocol. This protocol causes the OLED’s SCL pin to read as a serial clock pin and is wired to the SCL or D1 pin. In addition, the protocol causes the SDA pin of the OLED to serve as a serial data pin and is wired to the SDA or D0 pin. The displayed temperature allows the user to check the weather conditions at their bike so that they can determine whether or not they would like to ride that day.
In addition to the subscription of the Argon to the data produced from the sensor cluster, these two Argons perform a bi-directional, or 2-way communication. Within its code, the OLED beacon defines and stores an integer known as “TemperatureRead” which is published so that the sensor cluster Particle Argon can subscribe to this event. The “TemperatureRead” integer appears in the code every time the OLED receives a temperature reading from the sensor cluster Particle Argon. Once this event occurs and the sensor cluster receives the subscribed integer value back, an LED light is triggered on the breadboard, completing the 2-way communication.
The Bluetooth signal output from this Argon serves a fundamental role in determining proximity. A constant Bluetooth signature is broadcasted from the Argon. When the signature is in close proximity to the locking mechanism it automatically signals the bike to unlock. The locking mechanism’s Argon published an event as locked or unlocked based on the Bluetooth’s live signal. This event is subscribed to in order to display the status of the lock on the LED connected to pin D4. When unlocked, the voltage to D4 is set to high and the LED light turns on.
The Particle Argon in charge of the mechanical locking mechanism determined proximity via a Bluetooth signal to determine the lock’s state. Upon receiving a Bluetooth signal from the beacon, it goes into an unlocked state. This state sets pin D5 to low, reversing the linear actuator to unlock the bike. When the Bluetooth signal is lost the pin D5 sets to high, moving the linear actuator to the forward position and consequently locking the bike. The beacon argon outputs a low-energy Bluetooth signal and is scanned for in the code. The proximity range is roughly 15 meters and will change the color of the Argon’s status LED when the beacon is within that range. In addition, when the OLED Beacon argon believes the Argon is unlocked, it publishes an event. The green LED at pin D6 subscribes to this event and will light up green to indicate the remote's publish event. This helps diagnose any signal errors and shows that that the remote is functioning.
The linear actuator runs off of a 12-volt power supply and passes power through an H bridge to the linear actuator. Due to the difference in voltage and amperage between our locking mechanism and Argon, we utilized a relay to operate the switch. The relay connects the D5, 3v3 power, and GND pins to the Fwd, Rev, and GND pins of the H bridge.
The code initially tests for a ble signal from the beacon. If it reads a signal, it operates the D5 pin and subsequently outputs a publish event. This publish event only sends out a change in status, to prevent overloading the console with events. When a change in locked or unlocked status arises, a new event will be published as locked or unlocked. This satisfies the 2-way communication requirement with the beacon, as the locking mechanism receives proximity data from the beacon and a publish event for the LED, while the beacon receives a locked or unlocked status in return.
- Click here