Skip to main content

time to build something new

I've been making good use of the previous project. It did fail me once (unfortunately, that moment was probably the most necessary situation for the project..), but overall, it has been serving me well.

Ever since, I've been constantly thinking about what project I should start on next (or rather if I should even start on something else), but I never really got to thinking up an idea that is useful, not too time consuming, and relatively fun. It took some outside factors to get me started on a new project.

A couple of weeks ago, I was approached by a friend in church who wanted advice for a project she has to work on. It was an industrial design project in nature but required electronic functionality. As soon as I heard the general specifications, it spoke "I could be done with an Arduino." I decided it would be a win-win situation to help out by implementing the electronic part, as it is my understanding that the main focus of her project--what's graded--is the design/implementation and not the building of what goes in it (that are not related to design).

Basically, the project is about a key container that, when activated, would lock a key inside and will only open after a breathalizer check that returns a legal BAC (blood-alcohol content) level for driving.

So far, the requirements I have understood for the electronics is:

- a breathalizer component that measures BAC
- a simple LED display that displays the BAC
- a locking device that controls lock/unlock electronically
- an on/off button

 I've searched for available instructions on building a DIY breathalizer, and this Instructables entry seems to provide me with a good start.

Currently, my idea for the implementations for these components is:

- a circuit built around the MQ-3 Alcohol Gas Sensor for the breathalizer 
- a 4-digit 7-segment display
- no idea on locking device yet
- any kind of latching switch 

I've already ordered the alcohol sensor, will have to start ordering the other parts.

Let's start a new project!

Comments

Popular posts from this blog

json messaging (2/2)

Took a good 2 hours to change all the messages into JSON format and make it work. But it is done. All is JSON. Using it like a map, currently with three key-value pairs: "id" : for entering a session ID of another session if needed. Currently used for the web client to receive a acknowledge response to confirm that the target received the message (mainly for testing purposes). "type" : probably the most functional data going through all this. Current types are STARTUP_TYPE - for when the target sends its initial message, the server uses this to mark which session is the target. REQUEST_TYPE - for when the web client sends a request to the target. Server uses this to send request to target. ACK_TYPE - for when the target finishes carrying out the requests and sends an acknowledgement of the completion of the request to the server. Server uses this to send confirmation to the web client  MISC_MSG_TYPE - for anything else. DEBUG_TYPE - current...

come back

The last couple of weeks have been quite refreshing. The drive for learning and trying out new things has never been higher. Currently fascinated with Node.js; Javascript truly isn't the make-a-website-pretty script I had known anymore.  Playing around with back-end and front-end frameworks. Currently playing around with Sails.js, and once I get used to that, I am looking forward to trying out Angular.JS as a front-end framework. Other than that, currently have couple of other random APIs (non-Node.js) I would like to play around with, but I'm just keeping them up in my browser tabs to that I'll get to them eventually. In addition, I reviewed the Android Developer tutorial again--hoping to try making something in that end as well.

adding a servo

Since I don't have any lock that works based on a digital signal, it seemed appropriate to at least have something in place that would emulate the behavior of such a lock, and I thought that a servo would be a good substitute. (note: a servo is a device with which one can control a specific rotational position) Connecting a servo to the current circuit isn't too much of a challenge, as it just requires a single output connection along with the ground/power. Making the servo also just requires an addition of a few lines of code, using the Servo library . A simple video of the servo in action: Now, at least with a locking behavior in place, the one visible functionality that needs to be addressed is the device's ability to distinguish between a "standby" state (no alcohol/no breathing in: should be in "lock" mode) and a "open" state (no alcohol/breathing in: should be in "open" mode).