Twittering Laser Tripwire with Webcam Capture

Twittering Laser Tripwire with Webcam Capture

This instructable will show you how to construct a laser tripwire that can twitter and grab an image from a webcam, as well as execute any command you can put in a bash script.
This instructable is actually quite simple and is even suitable as a beginner arduino project. It requires a GNU/linux (or possibly Mac) operating system with the arduino IDE and Processing IDE working properly. This project could also be implemented in Windows if you created a more complex processing application.



Hardware Requirements
Arduino Board
Laser pointer/pen
Light Dependant Resistor
100Kohm Resistor

Optional:
  Webcam
  Breadboard


Software Requirements
Arduino IDE
Processing IDE
Linux OS (I'm using Arch Linux for this project)
Curl
Webcam (part of xawtv)


Other Stuff:
Mirror
Solder and Soldering Iron
Wire
Hot Glue Gun
Hacksaw/Knife
Straw or Ballpoint Pen
arduino.pde359 bytes
twitter.trip270 bytes
 
Remove these adsRemove these ads by Signing Up
 

Step 1Connecting The LDR

Connecting The LDR
«
  • PIC_0156.JPG
  • 1.JPG
  • 2.JPG
  • 3.JPG
  • 4.JPG
  • 5.JPG
  • 7fin.JPG
  • 6fin.JPG
  • PIC_0157.JPG
  • diag.png
  • PIC_0159.JPG
  • PIC_0161.JPG
  • last photo ←
»
 
I needed the LDR and the laser to be in a position where they would not move around so I connected my LDR and resistor directly to the Arduino without a breadboard, but you can do it however you like, below are the photos for soldering and bending them into shape I also included a simple diagram.

I cut the end off of a ballpoint pen so that I could slip it over the LDR to prevent ambient light from affecting the reading, you could also use a straw.
« Previous StepDownload PDFView All StepsNext Step »
51 comments
1-40 of 51next »
Jan 22, 2012. 7:00 PMcpoplawski says:
Can someone please modify this to not use processing? I am new to arduino and have been bashing my head in to make this completely stand alone (no pc needed). I am trying to make it so that it just tweets "laser has been tripped" after the alarm sounds. I have an Arduino Uno with Ethernet shield.
Dec 1, 2011. 7:22 AMriddik001 says:
"put twitter.trip into:
/home/your_username/" where do i find the /home/my-username? folder ? and which software i will use the arduino or processing to load the script thanks.
Dec 24, 2011. 3:18 PMdudesurge says:
you answered your own question, you find it in the HOME folder, as for the other question you can get the software from arduino.cc under downloads
May 17, 2011. 5:48 PMMdob says:
Here is what I did. I modified some of it a bit. I used the processing code but made it open up a .bat file which used snapz to take a picture and then used a .vbs file to attach that picture and send and email to my gmail account. This was all using windows.This has been a fun project. Now, all I need to do is make it all self-contained. I could possibly use the "$25 Computer" (http://www.raspberrypi.org/) with a camera and put it all in a project box with a laser module. That would be fun. If anybody wants the code that I used just ask me and I will host it.
Oct 15, 2011. 1:22 AMjparfoot says:
Hi mate great idea would love it if i could get a copy of your source code. cheers Jordan
Jul 12, 2011. 11:29 AMCatch_22_ says:
Basic auth is now unsupported by twitter. So you wont be able to use the code from twitter.trip.

User SuperTweet.net instead. Youre still using curl but supertweet.net acts as a proxy between you and twitter, allowing you to use basic auth. Twitter now uses oAuth which is a pain. For the code below, use your SuperTweet username and password, it is separate from your twitter login.

#!/bin/bash
trip=$(date +'%A %n %d, %l:%M%p' )
stat="["$trip"] Door has been opened"
curl -u USERNAME:PASSWORD -d "status=$stat" http://api.supertweet.net/1/statuses/update.xml --insecure
Jun 13, 2011. 10:56 AMtranoxx says:
when I use the Arduino code it does the opposite of what you said it would instead of making a 1 it stops making 1's, is this important?
Feb 19, 2011. 11:40 PMpolishdude says:
can you do this with windows?
Oct 24, 2010. 3:15 PMhabzbah says:
Nice tutorial, will try this soon!
Oct 9, 2010. 3:34 AMMegga.Richard says:
is there a possibility for me to get a copy of all the codes because i cannot view them...

can you confirm that the codes will run in Ubuntu (i think that is how you spell it)
Sep 22, 2010. 6:45 PMledfreak01 says:
i tried to upload the code to my arduino and it gave me an error about the line
fill(#36ff00) how could i fix this im running windows btw
Sep 9, 2010. 3:40 PMkenkoknz says:
Hi
Excellent project, but it appears now twitter does not support basic authentication when you run curl...what need to be changed in the bash script?
Thanks,
k
Sep 11, 2010. 5:48 AMyoyojoeco says:
Do you think it would be possible to send it to a google buzz or other account instead?
Sep 9, 2010. 6:21 AMyoyojoeco says:
Sweet but looks complicated.
Aug 4, 2010. 3:07 AMComputothought says:
Cool and awesome!! I would be tempted to just hook the ldr to my joystick port and cut out the arduino.. I would use freebasic to get info from the joystick port and then call twidge to do the twitter via the shell. Probably use an antique computer running Debian to do all this.
Jul 4, 2010. 3:29 PM_soapy_ says:
Looking at this, and your tweets, either you are working really late, or a 5am badger or moth is messing your sensor up. Might I suggest a small delay in the code so it triggers after (say) 1/4 of a second?
May 10, 2010. 11:20 AMstanuszekj says:
the ohms resistor is 100K about the LDR radioshack does not have them in stock throughout there website chain
Jan 26, 2010. 1:04 PMsardines454 says:
I can't seem to download the files in your 'ible.  Every time I click the link it downloads a file with some wierd name and a .tmp extensions.  Do you have anywhere else that I could download the code from?
Apr 12, 2010. 2:32 PMJunkyard John says:
I've had this problem before. Just rename the file to the extension you need. SIlly instructibles.com
Sep 6, 2010. 2:41 PMmman1506 says:
just rename the file extension to pde and it will work
Jan 19, 2010. 4:48 PMyosama101 says:
How do you open the twitter.trip file? and Im having a bit of trouble with your instuction, like the code.
Feb 2, 2010. 4:48 PMyosama101 says:
Oh, I dont need this anymore. I did it for a school assignment. It ended up not working, BUT we got an 85% on it, which is good lool for it not working lmao.
Jan 7, 2010. 2:17 PMcoolio49085 says:
1+ for Django
Jan 7, 2010. 1:40 PMAlpvax says:
could require alot of code editing, (i dont know as im not an arduino user, although this could convince me otherwise) but could it be linked with just a webcam and used as an intruder alert, getting the webcam to photograph whoever entered your room??

awesome 'ible
Jan 7, 2010. 11:35 AMjridley says:
Wouldn't it be more useful to use an infrared laser?  The red laser is too easy to notice.
Jan 5, 2010. 7:50 AMyosama101 says:
How sensitive does the LDR have to be? WHat were the specifications of the LDR you used?
Jan 4, 2010. 6:50 AMrenehug says:
Thanks for posting this here! Do you have any idea what range you can cover with this setup?
Jan 4, 2010. 4:29 PMt4kitty says:
can you follow these steps on window

Jan 4, 2010. 7:01 PMt4kitty says:
windows*
Jan 4, 2010. 3:36 PMBuzzsushi says:

do you have like a radioshack part number for the LDR?
And how many ohms is the resistor?

Jan 3, 2010. 8:41 PMdanahyatt says:
Nice project. I want to try this one for my first. Where do I purchase the Arduino? I will mount the laser like in the plans. Can you expand on how you used the webcam, zawtv? Perfect choice of linux arch for the os.
Jan 4, 2010. 11:01 AMdanahyatt says:
I am purchasing the "Aruuino USB Board" from sparkfun, is this the right one?
Jan 4, 2010. 10:36 AMdanahyatt says:
Printed my parts list and read Arch Linux wiki & forums plus watched few Youtube how to build the Arch Kernel. Will order Arduino today from sparkfun.com.  Thanks!
Jan 13, 2010. 8:17 AMnetgrazer says:
Build a kernel? I'm not sure about Arch Linux, but I never had to mess with anything like that on Ubuntu. Painless installation, works "out of the box".
1-40 of 51next »

Pro

Get More Out of Instructables

Already have an Account?

close

All Steps Viewing
View all steps of an Instructable on the same page when you're a Pro Member.

Upgrade to Pro today!
36
Followers
4
Author:action_owl