Raspberry Pi WebCam with 3G (Solarcam): Difference between revisions
Jump to navigation
Jump to search
(→Script) |
|||
Line 34: | Line 34: | ||
50 23 * * * ~/bin/mergeAllPicturesInOneAnimatedGIF.sh >> /dev/null 2>&1 | 50 23 * * * ~/bin/mergeAllPicturesInOneAnimatedGIF.sh >> /dev/null 2>&1 | ||
===== | ===== Scripts ===== | ||
====== movePictures.sh ====== | |||
#!/bin/bash | |||
#set -x | |||
# movePictures.sh | |||
# Author: Heiko | |||
# Purpose: Move files into place (Webserver), set lastsnap and delete old files... | |||
# Globals | |||
GFOLDERWWW="/var/www/html/solarcam" | |||
GFOLDERWWWIMAGES="${GFOLDERWWW}/webcam-archive" | |||
GFILEWWWLASTSNAP="${GFOLDERWWW}/webcam/lastsnap.jpg" | |||
GFILEWWWLASTGRAPH="${GFOLDERWWW}/webcam/lastgraph.svg" | |||
GHOME="/home/solarcam" | |||
# Move the image in place | |||
mv "${GHOME}/tmp/"*.jpg "${GFOLDERWWWIMAGES}/" | |||
mv "${GHOME}/tmp/"*.svg "${GFOLDERWWWIMAGES}/" | |||
# Make the newest "lastsnap" | |||
FILENEWEST="`ls -Art \"${GFOLDERWWWIMAGES}\" | grep jpg | tail -1`" | |||
cp -p "${GFOLDERWWWIMAGES}/${FILENEWEST}" "${GFILEWWWLASTSNAP}" | |||
FILENEWEST="`ls -Art \"${GFOLDERWWWIMAGES}\" | grep svg | tail -1`" | |||
cp -p "${GFOLDERWWWIMAGES}/${FILENEWEST}" "${GFILEWWWLASTGRAPH}" | |||
# Cleanup: Delete all files older than n*24hrs | |||
find "${GFOLDERWWWIMAGES}" -ctime +30 -delete | |||
# EOF | |||
=== Tips === | === Tips === |
Revision as of 00:15, 25 April 2018
The Idea
- Use solar panel to harvest energy
- Store the energy in a left over car battery
- Power a Pi, camera and
3G-StickMobile HotSpot[1] - Make a nice webcam out of it :)
Shopping List
- A Pi with camera :)
- A mobile Hotspot (I used a Huawei E1750C). Because getting an UMTS-Stick getting to work with an Pi sucks. Additionally you can easily join the WiFi network for maintenance)
- SIM Card
- (used) Car battery, in my case an 74Ah battery with one dead cell
- Solar panel (12V, 30W eBay around 40€) NOTE: Might be to small!
- Solar charger (f.e. "10A 12V/24V PWM solar panel regler solarpanel" @ ebay for around 15€)
- more to come…
How To
Update your Pi to the latest Linux version
See https://www.datenreise.de/raspberry-pi-raspbian-linux-wheezy-jessie-upgrade/
Scripts
Scripts running on the Pi
Script: Take picture every minute
Add this to crontab:
* * * * * /home/pi/Development/webcam/takePicture.sh > /dev/null 2>&1
Add a file named takePicture.sh to ~/Development/webcam/ with this contents:
TBD TBD TBD
Scripts running on the web server
cronjobs
# m h dom mon dow command 02,17,32,47 * * * * ~/bin/movePictures.sh >> /dev/null 2>&1 # # Create a daily time-lapse 50 23 * * * ~/bin/mergeAllPicturesInOneAnimatedGIF.sh >> /dev/null 2>&1
Scripts
movePictures.sh
#!/bin/bash #set -x # movePictures.sh # Author: Heiko # Purpose: Move files into place (Webserver), set lastsnap and delete old files... # Globals GFOLDERWWW="/var/www/html/solarcam" GFOLDERWWWIMAGES="${GFOLDERWWW}/webcam-archive" GFILEWWWLASTSNAP="${GFOLDERWWW}/webcam/lastsnap.jpg" GFILEWWWLASTGRAPH="${GFOLDERWWW}/webcam/lastgraph.svg" GHOME="/home/solarcam" # Move the image in place mv "${GHOME}/tmp/"*.jpg "${GFOLDERWWWIMAGES}/" mv "${GHOME}/tmp/"*.svg "${GFOLDERWWWIMAGES}/" # Make the newest "lastsnap" FILENEWEST="`ls -Art \"${GFOLDERWWWIMAGES}\" | grep jpg | tail -1`" cp -p "${GFOLDERWWWIMAGES}/${FILENEWEST}" "${GFILEWWWLASTSNAP}" FILENEWEST="`ls -Art \"${GFOLDERWWWIMAGES}\" | grep svg | tail -1`" cp -p "${GFOLDERWWWIMAGES}/${FILENEWEST}" "${GFILEWWWLASTGRAPH}" # Cleanup: Delete all files older than n*24hrs find "${GFOLDERWWWIMAGES}" -ctime +30 -delete # EOF
Tips
- Remember that this Pi is in the wild and easily stolen or all the data read
- Don't use your usual passwords for this project
- Don't store keys on the Pi
- Let your master server fetch the data (so no private keys are stored on the Pi) or use a chroot environment
- Create a special user to access the data from remote, or even better, get it per HTTP and use .htaccess for privacy (and less 3G-traffic ;) )
- If your WiFi connection breaks regularly, see Raspberry Pi WiFi issue (Solarcam)
?
- Links
- ↑ Since setting up the 3G-Stick was a pain in...