Jump to content

SkySurveyBanner.jpg.21855908fce40597655603b6c9af720d.jpg

Remote controlled CCTV surveillance system - Arduino based


Gina

Recommended Posts

I know this is not exactly astronomy related but may be of interest. Although with the cost of equipment used by astronomers, security is important.

History :- We have a number of CCTV cameras most with motor units to control where they point. A box in the kitchen is used to switch one of the cameras' video output to a TV. This signal is also fed to TV monitors in the lounge and bedroom. Also on the box is a switch to control the direction motor of the selected camera. All this works reasonably well but when sitting in the lounge it's a nuisance to have to go into the kitchen to choose another camera and/or change the direction.

New system :- The idea is as above, to select one of about ten CCTV cameras to display on a TV/monitor and to be able to point the selected camera in the required direction, but using a remote control. A small handheld box with a dozen buttons and battery powered will be used as the control (user interface). The selection and motor control will be done by the base unit which will be mains powered. Communication from remote to base unit will be by radio/wireless. IR remote is not suitable as we want to be able to use the remote control in a different room from the base station. Both remote and base units will use Arduinos.

Parts List for Remote Control :-

  1. Small box for remote control
  2. Button switches
  3. Arduino Nano (or Mini)
  4. Radio transmitter unit

Parts List for Base Unit :-

  1. Box
  2. Arduino
  3. Radio receiver unit
  4. Components to select camera feed and control motors (yet to be designed)
  5. Strip board
  6. Power supply
Link to comment
Share on other sites

  • Replies 116
  • Created
  • Last Reply

I have a system of IP cameras in place which I control from my laptop here in the house and anywhere else I may be. I can see all cameras on one screen and control each camera independently thru 360' day and night. Any movement means an automatic email which I can see in minutes or a text to a cellphone, I can also listen in to each camera. Cheap and cheerfull but works :). I also have a system for webcams but have made that redundant at present, that was motorised with a servo and radio controlled. Nothing like a bit of security :).

Jim

Link to comment
Share on other sites

Thanks Jim - that's interesting :) Only problem is that IP cameras aren't cheap :( I would like to do that but funds are limited and preferred spending is on astronomy kit :D

Link to comment
Share on other sites

Certainly Gina, don't get me wrong, I do agree with making do with what you can manage, it is great that you can combine the Arduino gear in everything, cuts down cost and not only that you understand the system :). My webcam system was cobbled together fron different hobbies but I found it wanting and decided as funds became available to upgrade each camera to an IP one. I think a lot of people do worry about security especially in our hobby with the vast mount of sums paid out on equipment and I would say that security sometimes does take a lot of monies from the hobby. I look forward to learning more about your Arduino system, maybe I might give it a play :).

Jim

Link to comment
Share on other sites

I already have a couple of these driver chips I ordered for displaying wind direction for my weather station :- http://www.ebay.co.u...984.m1497.l2649

I could use the same type in the base unit, to provide selection of up to 16 devices or drive up to 16 servo motors

Two ways of using them that I will consider.

  1. Controlling relays to select the video signal and motor control lines.
  2. One can feed servo motors if that's what I use - with the video selected with MOSFET analogue gates.
Link to comment
Share on other sites

For using the Tx/Rx units I've ordered see "Wireless Communications" - Chapter 14, page 459 of "Arduino Cookbook" (second edition). This describes how these units are used with the Arduino. (Partly for my reference... )

Link to comment
Share on other sites

I'm not really convinced there RF modules you have are the right choice. They are either only TX or only RX and seem to require some external filtering and some pairing in the Arduino sketch.

The RF1100-232 modules I use are bidirectional, require no external pairing or filtering and one module costs less than a pair of RX and TX modules of the ones you're using. And they support up to 19200bps.

But I guess it's alright if it works for you .. ;-)

Link to comment
Share on other sites

You might well be right - just have to see :D I love messing about with things anyway :) The distance involved is only up to about 20ft and only one-way comms are wanted. I could use some parity or CRC checking. It's only a simple application - basically just 12 codes. I could add plenty of redundancy as well as checking in the codes. And speed in not an issue.

Link to comment
Share on other sites

  • 2 weeks later...

Been thinking about the implementation of this project - while taking a bit of a rest from the camera cooling control.

ATM the CCTV camera motion is provided by 3v DC motor/gearboxes. These take a lot of current just to rotate an almost zero load. So I thinking of changing to servo motors wherever possible. Where I want more than the 180 degrees that servos provide I'll probably look at extending the range of the servo. This would (I think) be easier than either using the existing motors or stepper motors. Possible solutions include :-

  1. Full-rotation modified servos and pots (as used for volume controls etc.) will provide up to 300 degrees Feedback.
  2. Full-rotation modified servos and limit switches.
  3. Standard servo with gearing up.

I shall be overcoming the fact that the several cameras will be at different angles by saving each angle in Arduino memory. Then the appropriate variable can be incremented or decremented as appropriate by signals from the handset.

Now to the video feeds. I already have several 4051 MOSFET analogue switches. Each will select one of 8 inputs to feed to the output. These can be controlled directly from the Arduino.

Link to comment
Share on other sites

Hi Gina, am following this with interest, just hope you get it right without spending too much :). I seen something today in the television program called Click, it is an attachment that you can put on a cell phone/Ipad of something like that and it has a 360' mirror, now the clarity is not brilliant but attached to a camera it would be a good 360' motion detector without movement of the camera. I am sure that it won't be long before the clarity will impoove and an attachment wil be available for all cameras, I will be first in the queue :).

Jim

Link to comment
Share on other sites

Yes, I had thought of a rotating mirror. The problem is in getting a mirror that will survive outdoors. A surface silvered mirror could be used inside the sheds but most of those need less than 180 degrees.

Link to comment
Share on other sites

VirtualWire library and examples for use with the cheap transmitter and receiver modules are available here :- http://www.open.com.au/mikem/arduino/

This includes a zip file (v1.9) to download and unzip into the library and examples folders in the Arduino tree. There is also a pdf file that describes the examples, how to wire up the hardware etc. This library uses CRC data integrity checking which should ensure that any data that checks out is good. That plus strings of data for the various control commands should ensure that nothing changes unless the right control string is sent from the transmitter. Sending control from the handset via the transmitter to the receiver in the control module (base station) and acting on them seems perfectly straightforward.

I'm hoping to try this out in the next few days. I have downloaded the VirtualWire stuff and already have two Arduino Unos for testing. I also have a Nano to use eventually in the handset. I have 2 PCs with the Arduino IDE installed so I just need to add the new library to each. I have an LCD display and keypad shield on order which should arrive in the next couple of days, for use in my experinents. I also have a 20x4 LCD display on order, so should be well set up for experiments for this project (and some others).

The handheld box I bought for the handset turns out to be too small so I'm ordering a bigger one. The push button switches I got for this job are not really suitable as the button is only 3mm high and that's about the thickness of the box, so the buttons would not stick out. However, I already have some panel mounted PBs I bought a while back from Maplin that should be fine. Those were bought for a previous version of the CCTV camera control :D

As for the camera motors I think I'm going for servos, with the stops removed where required for greater angular coverage.

Link to comment
Share on other sites

Just been Googling 360' mirrors and see one for the Canon but @ £400 I think I will wait till they come out with a smaller one for webcams :).

Jim

Dont Police cars have rotating mirrors around a fixed light? Not that I would recommend borrowing a set of Police car lights (whilst their looking anyway) :grin:

Link to comment
Share on other sites

No no no lol, these camera lenses or should I say mirrors, they pop out of an enclosure and look like an upside down umbrella and do not rotate. As the person holds their phone they see a normal photo, they click and turn and as they turn the camera keeps working enabling a 360' photo :). Sorry Gina, just something to chuck into the mix, taking away an motors :).

Jim

Link to comment
Share on other sites

Here's my first design for the push button switch circuit. Pressing any button will power up the Arduino which will then read the three analogue inputs to determine which button is pressed. ( I'll probably need to add one little mod - to restrict the analogue input to 5v maximum.) The Arduino will then send a string command via the radio transmitter to the receiver in the base unit. When the button is released all power is removed from Arduino and Tx module to conserve the battery.

post-13131-0-47326800-1346966996_thumb.p

Link to comment
Share on other sites

One problem I see with this is that it takes the Arduino quite a while to "boot up". So you would have to press the buttons quite long.

It might be better to put the Arduino in suspend / sleep mode (can't remember the exact name now) and connect the yellow line in your diagram to an interrupt capable pin. An interrupt will wake up the Arduino much faster than a power up. Then read the button and put it back to sleep.

Link to comment
Share on other sites

That's a good point Chris. Do you know how much current the Arduino takes in sleep mode? Would it be practical to run it from a PP3 9v battery? I wondered if AA or maybe AAA cells would be a better idea. But it would need 4 I should think to give 6v. Or would it run on 4.5v (3 cells)? Must look for the spec :D Looks like I might need a bigger case.

Link to comment
Share on other sites

I've not tried this myself yet (all my arduinos are mains powered; directly or via USB). Some websites seem to suggest 0.05mA in sleep mode, compared to 20mA when running normally.

There is some information here:

http://interface.khm.de/index.php/lab/experiments/sleep_watchdog_battery/

http://www.rocketscream.com/blog/2011/07/04/lightweight-low-power-arduino-library/

I haven't read through these websites myself, just had a quick glance. Some further googleing might be required to find out how to wake up the Arduino via interrupt.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. By using this site, you agree to our Terms of Use.