Instructables

RFID Controlled Car Trunk

FeaturedContest WinnerContest Winner
Projected Achievement:
One will be able to walk up to the trunk of the car, touch their hip (which contains their wallet which contains an RFID card) to a specified point, causing the trunk to pop open. It will employ radio frequency identification to sense the human subject, a servo to pull the cord that pops the car trunk and an arduino to control the system. The system will be completely hidden from the outside.
This project will also allow me to explore a deeper understanding of electronics and C based code. 

Overarching Goal:
It is important to integrate technology into our lives, enhancing day to day activities, and the standard of life. My goal in this project is turn a mindless but routine task into a natural extension of our lives.

Thank you to sparkfun.com and Electronics plus for being great part suppliers with awesome consumer service and an infinite amount of helpful information. Shout out the Open Source community...

I don't expect anything negative to occur, but this is electronics, so that being said:
I am not responsible for anything bad that may come from this instructables, by reading this, you agree to not hold me responsible for anything.

 
Remove these adsRemove these ads by Signing Up
muddog152 months ago
Maybe add a reed valve to turn on the power only when the card with a magnet and RFID chip is presented.
yeti bear7 months ago
I would like to purchase an rfid setup. Basically powered from 12 to fire a spst relay.
If you can supply something like that please email me direct. Greenzero13 at gmail

Thanks
WABIX1 year ago
I have a pro micro and I never solder my FTDI headers into it. Instead, I stick the long end of a 6 pin straight header into the USB - FTDI. Then stick the short end into the 6 holes on the pro micro while programming. When finished, all you have to do is remove the header + FTDI. If you are doing small projects, this can save a lot of space.
Why do you have a computer hard disk, an old tape cassette reader, a graphics card, and either a dial-up modem or an Ethernet board pictured at the top right of the image?
duke2luke (author)  AJMansfield1 year ago
It is just a title picture. I could have set up all of my supplies and tools for a photoshoot but I choose to progress my electronic projects instead :)
Sorry if it was confusing.
This is the first time I've been truly disappointed in a feature of my car. I know my trunk latch mechanism inside & out from when I had everything dismantled to install a rear-view camera...and there is no way I can manage this :'(
SuzyMac1 year ago
I am not an electronics geek, but I am a Braille Geek and very curious about why you included the Braille....I love to see Braille where ever it is!
Hycro1 year ago
With my car I could just run a power wire from the car battery to a relay triggered by the Arduino, since with my car the interior trunk release is electric...
Great place to start. I can see where it could be integrated into the car a little more. One could use the car's own battery, make sure your Arduino can take 14 volts or use a regulator. Most cars now have an electric trunk release so you could hook into that using a relay instead of the servo.
Heat sinks, good idea, I rarely use one though. I would recommend anyone new to soldering use one. I find if you move quickly you get the best joints. If your flux is smoking get the joint completed before it quits and don't be afraid to use lots.
duke2luke (author)  josephlebold1 year ago
Thanks, I am looking into integrating parts of it into my car battery but am also trying to be careful in order to not find my car with a dead battery one day.
Unfortunately my car does not have an electric trunk release. That would have made things a lot easier for me.
As for the soldering heat sink, it turns out I didn't need it, my board is not broken. I had not ruled that out as a possibility because the power system was not working, but since it now is, I have no reason to blame the board.
jwhitley1 year ago
The Arduino's lowest >required< voltage is 6V, but recommended is 7V. The "pulsing" you are experiencing may or may not be too much current draw. You can test this by using a multimeter on the 5V + GRND pins. If the 5V drops to 0 during the "pulse off" phase, then it is likely that the Arduino is seeing more current than it can handle and the overcurrent protection is kicking in. I've had this happen with certain loads.

After looking at your "flow diagram," here is my recommendation: Use a separate supply for the servo. That size of servo is very likely to pull more amperage than the Arduino can handle regardless of what supply you have hooked up to the Arduino. I think the best option is to use the 12V from your car, regulated down to the required 6V, to power the servo and buy a different battery with a higher voltage to power the Arudino. The servo obviously doesn't use power unless you're actually actuating it so it won't be a drain on the battery and it can draw much more current without bothering the Arduino.
duke2luke (author)  jwhitley1 year ago
Thanks, those are some good suggestions. If the issue is that the current is more than the arduino can handle, why would the system work when plugged in to the computer? I will definitely try the higher voltage battery though, I could see that being the problem. Thanks for the help!
The USB connection is current-limited. The battery is not. You can pump as much current as the battery will allow through the Arduino (and eventually hit the overcurrent protection) but the USB connection will only allow a certain amount of current to be drawn thanks to current-limiting resistors in your motherboard.
I agree with jwhitley, use the car's battery as the power source(s) and let the arduino become a "relay-like" trigger, not a power supplier. Also, USB is MB limited to 500mw max and yes I'd think the arduino would switch to it's USB power mgmnt upon USB connection. It looks like you have a crown vic so running a voltage line is easy enough by removing the trim along the bottom of the doors and you can punch through the thick rubber boot that allows the car's wiring harness through the firewall. Just remember to fuse at the battery (as close as you can get) to limit any potential damage from shorts to GND. You can also find switched voltage under the dash that is only "HOT" while the key is in the "RUN" position or only "HOT" while the key is in the "STARTING-ONLY" position should you choose to explore other options! I have kitted a few Crown V's up for police use (as well as other cars/truck/suvs) and this has way more potential than just a novelty! Great job! See now I need to dig out my barely used UNO kit and get an RIFD kit too! Peace n God bless! <><
When plugged into the PC, doesn't the Arduino automatically switch it's power to run off of the USB? That would have a much higher amperage capacity, to run the servo.
jimmytvf1 year ago
wow, this gave me an idea to how to make an anti thief system. instead of powering up the servo with the RFID, you can put a heavy duty relay from the spark plug wires in your car and trigger it with the RFID, so anybody can drive it! you could start the car also with the RFID, but is a pretty seen idea.

nice ible dude, i mean duke!
I have never seen a relay that would hold up to a spark plug voltage and surges for long. I would think you could wire in the switch to the rfid easier.
mr. stacey davids got the solution.
http://www.youtube.com/watch?v=-zbC6T6sfZM
skip to 1:52
duke2luke (author)  jimmytvf1 year ago
That's a cool idea, it would be fun to touch my wallet to a predefined spot thereby stating my car. Unfortunately though I am already working on a push button start system that is tied into a Nike + door unlock system.
How would that be anti-theft? Unless you're saying disable the key-ignition so it can't be hotwired? But at that point you would probably want to hide somewhere on the dashboard.

If that's what you were referring to, that a very creative use. Though it may be just as effective to also set it up to use the RFID tag to unlock the doors.
reborne1 year ago
I really like this and is IS really informative; but me being the simple guy I am went for an easier option with the same results (well, almost same, mine was on the doors instead of the boot).

I purchased an rfid unit that was ready made for £20 complete with fobs from ebay. No playing about with voltage regulation or losing an arduino unit to doing what is in effect a very simple thing for it. (I'm thinking cost effectiveness here).
At the same time a central locking kit with 4 servos and control unit - crucially the control unit allowed a voltage input to mimic a keypress on a normal fob.
The system was also going to allow keyless ignition from the initial RFID response, but unfortunately the car didn't last long enough :-(

Again, I don't want to take anything away from your 'ible, I think it's great, I've just never had the time to get into the whole arduino thing :-)
duke2luke (author)  reborne1 year ago
I completely understand, electronics take forever to build.
Personally though, I enjoyed learning more about the electronics and found that using an arduino allows for an unlimited amount of flexibility. The instillation process is one of the hardest parts (if you want it well integrated) so flexibility was important to me.
Also, for unlocking of the doors, I choose to use the2.4Ghz spectrum because of it's range (Nike + with arduino).
I am also working on a keyless ignition system, but it is important to me to use a button so I don't have to take my wallet out of my pocket (yes, I am lazy). I also need the system to allow me to active electricity on, all electricity on, and car on.
Again, I understand where you are coming from though.
duke2luke (author) 1 year ago
Thank you to everyone for the comments, its quite encouraging and makes me want to make more ibles!
An update (that I will reflect in my ible soon) on the power issue:
I powered the arduino with a regular 9v (just a regular Duracell) and powered the servo separately with the same 9v. I had two sets of alligator clips connected to the 9v. One set was simply connected to the raw and ground pins on the arduino and the other set was sent to the ground wire for the servo and a variable voltage regulator which then went to the servo's vcc wire. This allowed me to play with the voltage values for the servo only. I was very surprised by what I found: the arduino ran fine with the 9v and strangely the servo ran best on 1.55v pulling 6.8 mA. I always thought this servo would take 5-6v but it clearly ran best on 1.55v.
Now I need to figure out how I can permanently power the system. I can find a battery that is 9v with a high amp/hour rating but need to find a power system for the servo now. I will probably try to connect it to the car like jwhitley suggested. Thanks again for the help everyone!
duggerpato1 year ago
So tell me about the servo, before I buy one (for a different idea), since I don't know anyone who messes with servos. Does it just rotate that wheel like 90 degrees, and return it to "0"? Could I program it to rotate 90 degrees, and stop until I want it to return to 0? I want something that could open a spring with an electronic signal, then return it when I want it to afterwards. Am I on the right track here? Great instructable, btw.
Hi, servos are used with Arduino on lots of robot projects such as this one, where you can find sample code using the servo library:

http://www.instructables.com/id/Simple-Walker-Robot/step25/Program/

There may be better examples than this, but you can get an idea.  I am building this as my first robot project and I found it very easy to drive the servo to any position within its range (easily 90 degrees or more) and hold it there. For this 'ible, if the cord is stiff to pull, you might need a very strong servo though. I am not sure the average hobby servo will be strong enough - This depends a lot on the car.  Good luck with your project!
duke2luke (author)  Untold1 year ago
I agree with Untold's comment. The code is simple if you use a limited rotational servo. If you use a unlimited rotational servo it will be harder to code because it will use pulses to detect its position.
As for the strength of the servo, Untold is again correct. I started with a smaller servo but needed to upgrade to the one I listed.
Good luck on your project duggerpato!
jweirs1 year ago
too many amps maybe. usb is typically 100-150 mA, and youre putting 4.5 Ah to it. thats way more current than the module wants.
duke2luke (author)  jweirs1 year ago
Good point, I am a bit confused though because I thought that the amp hour rating was more of a maximum and that the arduino draws the current it needs (in other words, the amp hour rating is not the same as the amp rating)?
rpb duke2luke1 year ago
You're absolutely right. 4.5 Ah just means that the battery can provide an amp for 4.5 hours, or 100mA for 45 hours, 10mA for 450 hours, etc. - it says nothing about how much current will be drawn by your circuit, which, as you rightly state, is just determined by the voltage of the battery and the arduino itself (plus any other things you have connected to the battery).

So a bigger Ah figure just means your battery is going to last longer - it's not going to push any more current through the circuit.
Amp Hours is the amount of amps drawn over one hour, amps is the immediate amount of amps flowing in. Amp hours is more of a size thing for things like batteries.
dkkim jj.inc1 year ago
Closer. Amp-hours is the total charge capacity of the battery (like how much fuel in a tank).

The basic definition is:
Charge (coulombs) = Current (Amps) x Run time (Sec)
= Current (Coulombs/sec) x Run time (Sec)
But it's easier to use in units of Amp x hours rather than Amp x sec, like so:
Charge (Amp Hours) = Current (Amps) x Run time (Hours)
Helps you figure out how long the battery will last (roughly, it won't discharge evenly).

Current capacity is how fast the fuel can flow out of the system. That is what sounds more related to the issue you guys are discussin.g

Hope this helps,
David

duke2luke (author)  jj.inc1 year ago
Thanks, that's what I was thinking, which is why I thought the listed battery would work. I will have to try the 9v to see if it is the battery or the arduino...
jweirs1 year ago
overall, this is kickass. can you use one arduino module for more than one rfid reader? if you put the arduino in the center console, and ran an rfid reader for the trunk, doors, and starter (maybe), could the one arduino differentiate between signals? or just fire all the servos at once?
duke2luke (author)  jweirs1 year ago
Thanks, it was fun to build!
That's a good idea, I didn't think of using two RFID readers. Since I have this system (http://www.sparkfun.com/tutorials/135) set up, I was just going to have the push button start work only within a specified time after the doors are unlocked. I like your idea, but I am not sure if the range of the RFID reader (even the ID-20) would be enough.
You could put a reader on the drivers seat.

Then just for fun, I would have another project that monitors both the seat switch that triggers the seatbelt warning, and the RFID status - if someone sits in the seat without the correct RFID card, then a bogus security message will prompt them to enter a code on a keypad in order to bypass the alarm. The keypad will actually be a way to compose music over an external PA speaker. This prompt of course will inform you that your card isn't registering properly.
duke2luke (author)  Shadetree Engineer1 year ago
Haha, that could be fun, especially if I did it to a friends car while they were away...
For pranking, I would skip the RFID and just use the seatbelt switch to start the show.

You could have a rhythm track that plays for 5 seconds whenever a key is pressed. And a countdown timer that plays the rhythm track plus any key presses that were recorded to memory. The implication being that your friend needs to enter something before the timer runs down. All the while another track keeps playing 'Please enter code'
You may need a powet filter. This "smothes" out the bumps in the power and gives a clean level power. DC current in cars is tricky. I have leds in my car under the dash runnig of the 12volt rail. I have the regulator and power filter in a 12volt power plug. I also have a protection fuse.

And on the ardunio, when the programer is pluged in the unit switches to usb power. Which is 5volt at around 750ma. 750ma is the max usb can give out. This may not be enough for certian servos. A method I see that works is a relay to control the highet power for the servo. Yes it is more wiring and tweaking in the code. Hope this helps
nadav1 year ago
it may be because the battery's voltage is 6V and if I'm pretty sure that unless you're running of usb the arduino need a higher voltage in order to drop it down properly to 5V (using its onboard 5V regulator)
louisw1 year ago
hi, great able, one question, ever accidentally unlock trunk just walking by?
Pro

Get More Out of Instructables

Already have an Account?

close

PDF Downloads
As a Pro member, you will gain access to download any Instructable in the PDF format. You also have the ability to customize your PDF download.

Upgrade to Pro today!