Etikett: ebay

HolkCamDevice

Jag har börjat fundera på en kameraenhet som är enklare och mer lättviktig för fågelholkar. Tanken är att den ska kunna drivas på batteri och bara skicka data ibland. Jag började med att kolla på ebay och hittade då en IoT kamera enhet som kan passa så jag beställde en sån… Jag ska prova och se om det fungerar och i så fall kan jag beställa fler.

Arducam 2MP V2 Mini Camera Shield + ESP8266 Esp-12F Nano Evaluation Kits Bildlänken leder till ebay

Om enheten inte blir så dyr kan jag sätta den i flera holkar, alternativet är att göra den ’flyttbar’. I projektet ingår väl också att designa lämpliga holkar där enheten passar…

Utanför vårt köksfönster har vi en liten skogsdunge på en höjd där marken tillhör vår förening och jag tänkte sätta upp några olika typer av holkar där till nästa säsong, gärna med kameror i, jag tror att vårt WiFi räcker ut dit men det får jag prova. Förhoppningsvis går det att fixa ett batteri som klarar en säsong (ca 3 månader) men annars får jag göra någon form av laddmöjlighet, via solceller eller en laddkontakt för ett ’powerpack’ tex.

För att det ska fungera behöver jag utveckla någon form av rörelsedetektering som inte använder bildströmmen. Den PIR givare jag hade tidigare falsklarmade alldeles för ofta men det går kanske att filtrera signalen.

Fortsättning följer…

Nytt projekt

För min del har det varit en slö-helg i bemärkelsen att jag knappt varit ut mer än med soporna… Istället har jag i sakta mak nördat ner mig i diverse programmering för blåmeskameran och serverdelarna till det projektet.

Idag har jag också börjat med ett nytt projekt eftersom jag inte har så många på g 🙂 Projektet i fråga är en temperatur-logger som jag tänkte sätta upp i stugan för att mäta temperaturen inne, ute och under huset där vattnet kommer in. Dessutom ska den mäta temperaturen i själva lådan också.

Idag byggde jag ihop det mesta av hårdvaran och har även börjat med programvaran. Det är en Arduino Uno med en ’logger’-shield, ett SD-kort, en klocka (RTC) och lite annat och som jag också kan ansluta tre yttre temperaturgivare till.

Nu väntar jag på några kontakter från Electrokit för att kunna göra det klart. Kanske hinner jag med innan torsdag då det bär av mot Öland nästa gång. Annars blir det väl fler chanser…

Insidan av lådan

Utsidan av lådan med några givare.

 

R I P

Idag har jag labbat med en utvecklingsversion av ESP8266-12E. Syftet var att få OTA (over the air update) att fungera. Det är himla smidigt att kunna byta mjukvara utan att använda en programmerare och koppla in datorn varje gång. Jag bygger ju en del nätverksanslutna småsaker (termometer tex) och ibland är det ju något som blir fel i mjukvaran eller som man vill ändra av någon annan anledning…

Allt gick bra och det fungerade en stund. Tills dess att några pinnar blev kortslutna när den hamnade på mitt stökiga bord och kom i kontakt med nåt ledande. En rökpelare och en frän lukt tipsade om att något inte stod rätt till. Tyvärr dog den helt så det var bara till att beställa några nya.

Lessons learned: Håll till på det isolerade skrivbordsunderlägget och röj av det från skräp innan arbetet börjar.

Röran på skrivbordet

Den numera rökta enheten på skrivbordsunderlägget

Vadderade kuvert österifrån

Idag låg det ett gäng vadderade kuvert i brevlådan. 🙂

En del av innehållet syns på bilden och det ska användas i diverse olika projekt. IR-sensorerna och några av kontakterna ska användas i ’buggyn’. IC-kretsarna är kretsar som används för styrning av DC-motorer så eventuellt använder jag en sån till ’buggyn’ också då den jag har nu är onödigt ’fläskig’.

20161012_180236

Kontaktdon, temperatursensorer, IR-sensorer och styrkretsar

Autonom buggy

20160922_192907

Chassit

Detta projekt ska bli ett autonomt fordon med ett chassi från en radiostyrd bil som bas. Chassit är 4-hjulsdrivet och har en 6V motor som drivning. Styrsystemet är en Arduino Nano och den kommer att ha några IR-sensorer för avståndsmätning, en accelerometer och kompass för att märka om den slår runt och sedan kanske någon mer sensor. Strömförsörjningen blir från början 4 vanliga AA-batterier eller mitt nätaggregat.

 

Steg 1, test av motorstyrningen

20160924_142809

Kopplingsdäcket med Arduinon och ansluten H-brygga och motor. Motorn matas nu från mitt nätaggregat.

Jag tog loss motormodulen i chassit och körde motorn via en H-brygga och styrning från Arduino Nano.  Det fungerade direkt.

int IN1=8;
int IN2=9;
int ENA=3;

void setup()
 {
 pinMode(IN1,OUTPUT);
 pinMode(IN2,OUTPUT);
 }
 void loop()
 {
 analogWrite(ENA, 200);// motor speed
 digitalWrite(IN1,LOW);// rotate forward
 digitalWrite(IN2,HIGH);
 delay(2000);
 digitalWrite(IN1,HIGH);// rotate reverse
 digitalWrite(IN2,LOW);
 delay(2000);
 }

 

Steg 2, test av mini-servot

Jag lät även Arduino Nano provköra kod för att styra servot. Även detta funkade felfritt med den exemplekod jag hittade.

#include <Servo.h>

int IN1=8;
int IN2=9;
int ENA=3;
int SERVO = 7;
int START=4; //start race via the remote
int KILL=5; //cut power to the motor
// analog inputs from ir-sensors
// analog input from US sensor
// i2c bus, accelerometer and compass

Servo myservo; // create servo object to control the servo
int pos = 0; // variable to store the servo position

void setup()
{
 pinMode(IN1,OUTPUT);
 pinMode(IN2,OUTPUT); 
 myservo.attach(SERVO);
}

void loop()
{ 
 setSpeed(255);
 forward();
 for (pos = 0; pos <= 180; pos += 1) { // goes from 0 degrees to 180 degrees
 // in steps of 1 degree
 myservo.write(pos); // tell servo to go to position in variable 'pos'
 delay(15); // waits 15ms for the servo to reach the position
 }
 setSpeed(150);
 reverse();
for (pos = 180; pos >= 0; pos -= 1) { // goes from 180 degrees to 0 degrees
 myservo.write(pos); // tell servo to go to position in variable 'pos'
 delay(15); // waits 15ms for the servo to reach the position
 }
}

void setSpeed(int speed)
{
 analogWrite(ENA, speed); // motor speed 
}

void forward()
{
 digitalWrite(IN1,LOW);// rotate forward
 digitalWrite(IN2,HIGH);
}

void reverse()
{
 digitalWrite(IN1,HIGH);// rotate reverse
 digitalWrite(IN2,LOW);
}

void setServo(int POS){
 myservo.write(POS); 
 }

Nästa steg blir att sätta ihop chassit igen med riktiga kullager och en vanlig bakaxel. Parallellt funderar jag på hur ett kretskort ska se ut för att koppla ihop de olika delarna. Jag vill kunna ansluta varje del för sig så att det är lätt att byta ut om det behövs. Någon form av ’moderkort’ med stift för resp. komponent kanske…

Jag ska även skapa ett nytt github projekt så fort jag får ihop lite ’riktig’ kod.

Steg 3, nya kullager

 

20160927_194245

Pyttesmå hjullager…

Nu har chassit fått riktiga kullager till alla hjul. Det var pilligt att få dit dom men det gick till slut.

Jag har även riktiga kullager till diffarna och drivaxeln men dom har jag inte bytt ännu.

Tyvärr fattas det lite delar för att jag ska kunna sätta ihop chassit helt men det får jag fixa på nåt sätt.

 

20160927_194220

Bakaxeln utan övre reaktionsstag. Dom jag hade var lite för korta.

Steg 4, Chassit komplett

Nu är chassit komplett med alla hjul och hel ’drivlina’. Även framaxeln och styrningen är ihopsatt men servo-länkaget saknas fortfarande. Nu kan jag börja göra lite prototypdetaljer, tex kretskort i väntan på att ir-sensorer ska dyka upp i brevlådan.

20160928_194351

Chassit med arduino nano (ovanpå) och en motorstyrningskrets.

Steg 5, styrsystemet

Bilden visar första prototypen på styrsystemet.

20160930_200925

Styrsystemet med kontakter för Servo, motorstyrning, IR-sensorer, startsignal och en I2C-buss. Kontakten för I2C-bussen har plats för två givare och där sitter nu en kompass och en accelerometer/gyro.

Steg 6, Plattformen

Nu finns en första prototyp på ’plattformen’ dvs det som ska hålla allt på plats. Jag valde att göra den av en bit hyllplan som jag hade liggande. Den är i ek så det är stadigt, hårt och bra men kanske lite för tungt. För montering av sensorer och kretskort använder jag kardborreband som är självhäftande. Det är nästan lika underskattat som smältlim…

20161016_125126

Plattformen med monterade sensorer.

Nu kan jag sätta ihop alltihopa men kan inte ansluta strömförsörjningen ännu pga att jag saknar några kontakter och en strömbrytare. Såå fort jag får ordning på det så ska jag göra ett litet testprogram som kör fram och tillbaka bara för att se hur fort den går.

En annan sak som saknas är servolänkaget. Servot inklusive styrningen fungerar men inte den lilla biten emellan.

20161016_124822

Nu börjar det likna något. Nästa steg är en provkörning.

Steg 7, Ett första test

Upp-pallad på en ask med batterier så kör den mha av Arduino-koden som nu finns på GitHub. Den saknar fortfarande ett servo-länkage men det ska jag försöka fixa snarast så att jag sedan kan börja prova på riktigt.

Steg 8, Hårdvaran fungerar

Nytt test. Denna gång med fungerande servolänkage och kod som nu också vrider på framhjulen. Allt sensordata läses in och skickas till seriekanalen så nu kan jag se vad som händer och snart fortsätta implementeringen av själva ’föraren’.

Sensordatat på seriekanalen

Sensordatat på seriekanalen

HolkCam2 – 2017

Säsongssammanfattning:

2017-03-04: Holken sattes upp
2017-03-08: Första besöket!
2017-04-01: Det första bomaterialet börjar tas in efter mer än 120 besök
2017-04-11: Den första övernattningen!
2017-04-21: Första synliga ägget men det är kanske fler
2017-04-24: Tre synliga ägg
2017-04-25: Fyra ägg och honan blir matad i holken
2017-04-26: Fem ägg
2017-04-30: Nio ägg. Nu är det nog snart dags att börja ruva på riktigt!
2017-05-01: Nu har jag spelat in drygt 6800 videosnuttar som upptar 10.5 GB på serverns hårddisk
2017-05-02: Nu ruvas det på riktigt! Honan har varit i holken större delen av dagen.
2017-05-06: Snart har halva ruvningstiden gått
2017-05-15: Första ägget kläcks
2017-05-16: Alla ägg utom ett är kläckta
2017-05-21: Det är 7 eller 8 ungar som krälar runt och äter, sover, äter… Nu börjar också de första fjädrarna synas
2017-05-29: Nu är det 4 bara ungar kvar. Övriga har dukat under och blivit utkastade ur holken av föräldrarna
2017-05-31: Tyvärr har mamma blåmes och 3 ytterligare ungar dött i holken och det är bara en unge kvar som får mat av pappa blåmes. Jag publicerar inga videos på detta eller resten av säsongen då holkens innandöme inte är särskilt trevligt.
2017-06-03: Den unge som fått mat av pappa blåmes sitter i holk-öppningen ett bra tag innan den bestämmer sig för att flyga ut men till slut så vågar den. Nu är det bara döda fåglar och flugor kvar i holken…

HolkCam2 är därmed avslutat och nu är det bara att ta ner holken och rensa den eller slänga den.
Videofilerna finns kvar ett tag men avslutningen blev ju inte så trevlig i år heller så jag får se vad jag ska göra med materialet.

Mer spännande information om blåmesar finns på Wikipedia.

Säsongens höjdpunkter hittills på YouTube

All kod för kamera och server-backend finns på mitt github-konto.


Nedtagning och avslutning

Nedan är bilder när holken tömdes. Det var en rejäl bobale detta år, ca dubbelt så hög som förra året men djupet i holken var också större för att undvika skatattacker.

Kamera modulen, en raspberry pi 3 och en Arducam IR kamera med riktigt vidvinkelobjektiv ska jag återanvända. Jag rengjorde den och försökte torka av den med handdesinfektion men har också knutit in den i en plastpåse och lagt den i frysen några dygn så eventuella bakterier ska försvinna.

Själva holken kanske jag också använder igen då den har ganska bra mått och är målad som vår husfasad.

Holken när taket tagits av

Den höga bobalen. Hålet nederkant är i samma höjd som undersidan på ’ribborna’. Hålets diametar var 28mm.

Bobalen med den döda blåmesmamman och några döda ungar.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Bygget av holken, projektbeskrivning:

Steg 1 Trä-hårdvaran

20160716_114640Det började med att jag köpte lite prylar från ebay, en kameramodul med skruvfäste för riktiga objektiv och ett medföljande fish-eye objektiv. Jag ska prova det lite och så får vi se vad som händer.

Leveransen av kameramodulen drog ut lite på tiden och då började jag med själva holken. Ett mindre ingångshål, djupare och med inbyggt skatskydd blir den säkrare. Holken har även ett ’innertak’ precis ovanför ingångshålet så det blir ett litet ’maskinrum’ där kameran etc kan placeras. Till vänster syns delarna innan dom skruvades ihop.

Förutom kamera kommer holken att ha IR-belysning och någon form av temperaturgivare. Kanske kan jag även får plats med en andra kamera dvs ha både en IR-och en vanlig kamera.

Nedan är en bild när holken är hopmonterad men utan tak.
20160716_121510

Steg 2 Val av hårdvara

Nu har jag valt en kameramodul med lagom mycket vidvinkel, (NoIR Camera Board OV5647 /w M12x0.5)  och provat lite hur den ska få plats i holkens ’maskinrum’. Jag skulle även vilja ha en mikrofon och kanske någon mer givare förutom temperatur. Det vore kul att sätta upp en lysdiod eller motsvarande på holken som visar när någon är ’hemma’ tex. Hårdvaran för övrigt blir nog en raspberry pi 3 och ett stort minneskort.

Den utvalda hårdvaran. En raspberry pi 3 och IR-kameran kompletterade med en temperatur och luftfuktighetssensor och några IR-lysdioder. Ev tillkommer en vanlig röd lysdiod som ska sitta på utsidan för att visa om det är någon i holken.

Steg 3 Programvarutest

Nu ska jag prova programvaran där jag denna gång använder python och opencv samt en egen implementation för att detektera rörelser och spara videosnuttarna. Jag ska också automatisera hur jag sparar och publicerar klippen på en websida. Som tidigare kommer en videoström alltid att vara tillgänglig för att se ’live’ vad som händer i holken.

Steg 4 Färdigt koncept för hårdvaran

Nu har jag ett koncept på hur det hela ska monteras i holken.

Programvaran börjar också ta form och jag checkade just in en version av en opencv-genererad bildström som får en uppdateringsfrekvens på ca 5 när jag kör 1024×768 vilket är en rejäl förbättring mot tidigare. Det är också väldigt mycket bättre bildkvalitet och lättare att styra överlägg (tex text) i bildströmmen.

Kameran är monterad på rätt sätt och en temp/fuktighets-sensor finns på plats för montering i holken.

Steg 5 IR-belysning

Nu har jag en fungerande ljusramp av IR-dioder också där det går att styra ljusstyrkan mha en pwm-signal. Programvaran kan nu också spara videosekvenser och jag håller på att programmera rörelsedetekteringen så snart blir det skarpa tester.

En stillbild från videoströmmen. Det är tvärmörkt i holken men ir-dioderna lyser upp ganska bra även med 50% pwm. Texten visar tid, temperatur, luftfuktighet och bilder per sekund. Då det är ett fish-eye objektiv ser holken väldigt djup ut. Jag har ett objektiv till som inte är lika vidvinkligt så jag ska prova med det också och se vilket som funkar bäst.

Steg 6 Kameramodulen

Nu har jag en fungerande hårdvara! Allt monterat i en lite låda för raspberry-pi med kamera och IR dioder som tittar ut genom locket. Jag bytte ljusrampen mot fastmonterade dioder som jag tror funkar bättre.

Smältlim, gummiband och eltejp håller ihop det just nu. Nu fattas ’bara’ programmet som ska fixa rörelsedetektorn och videoinspelningen men det är på g. Sedan gäller det att hitta en bra plats att sätta upp holken på. Just nu lutar det åt att jag helt enkelt skruvar upp den på väggen utanför fönstret på övervåningen. Då blir det lätt att dra ut en strömsladd och även göra ’service’ om det skulle behövas.

Jag ska även göra en bättre ’backend’ än förra året då det är tänkt att videofilerna ska synkas till min egna webserver.

Raspberry-pi lådan med kamera och ir-belysning. Det vita är en temperatur och luftfuktighets sensor som ska sitta i holken.

Steg 7 Rörelsedetektor

Projektet tog ett rejält kliv framåt i helgen då det var ’Minihack. Jag fick hjälp av en jobbarkompis och vi snodde ihop en rörelsedetektering i mjukvaran med hjälp av opencvs ’backgroundsubtraction’.

Nu fungerar även inspelningsfunktionen och det finns två rörelsedetektorer. Förutom direkt i videoströmmen har jag även installerat en ’PIR’ detektor men den verkar falsklarma lite för ofta så kanske behövs det någon justering…

Steg 8 Sista touchen

Nu är den snart klart att sättas upp. Förutom att ’backend’ och övriga programvaran är klar (eller åtminstone tillräckligt klar) har jag även satt fast tätningslister runt taket och bättrings målat holken lite. Nästa steg blir att sätta upp den och det kommer jag att göra till helgen. Sen är det bara att hoppas på att blåmesarna gillar även denna nya generation av holk.

Kameran monterad under taket och temperatursensorn på sidan i bakre hörnet.

Tätningslisten. Taket skruvas fast mot denna så då blir det förhoppningsvis tillräckligt tätt.

Steg 9: Uppsättning och start

Nu är den uppsatt och startad på riktigt. Följ utvecklingen via http://sundback.ddns.net/

Holken uppsatt på samma ställe som förra året, dvs på en av stolparna till våran trappavsats.

Ett litet oscilloskop

För ett tag sedan köpte jag ett litet digitalt oscilloskop på ebay. Det levererades som byggsats men har blivit liggande tills idag. Det var ganska lätt och lite pilligt att löda ihop det men det fungerade direkt!

Det finns massor av dessa på ebay i olika ’konfigurationer’ jag valde en där alla ytmonterade komponenter var färdig-lödda så jag slapp montera dessa.

DSO138

DSO138

Fler leksaker

Idag låg det ett stort paket i brevlådan med en massa kinesiska tecken på. Det var en ebay-beställning som innehöll lite smått och gott som jag beställde den 3:e februari. Med tanke på att det varit kinesiskt nyår och prylarna skickades först runt den 12:e så gick det ju undan denna gång. I paketet låg en enkel plattform för en robotbil med två motorer, hjul och lite monteringsmaterial, några alko-mätar-givare och några rfid-knappar och läsare.

Styrsystemet till bilen kommer nog att vara en aurdino uno med lite sensorer men först får jag bygga ihop själva plattformen och prova motorerna.

Paketet är uppackat

Paketet är uppackat!

Nya leksaker

20160223_173909Idag hämtade jag ut ett litet paket från Electrokit med lite kul prylar:
2 st Arduino Uno, en bok med lite inspiration och en låda till Raspberry Pi som är ’Lego.kompatibel’.

Jag har ju mest gjort projekt med Raspberryn men tänkte prova lite Arduino också, kul med omväxling 🙂

Jag kunde inte hålla mig borta från ebay idag heller så nu ligger det antal transistorer i min köphistorik också. En nackdel med ebay är ju att det tar ett tag att få prylarna men å andra sidan så blir det ibland lilla julafton när dom väl dyker upp då jag beställer saker som jag tror är bra att ha och sedan nästan glömmer bort det innan dom dyker upp…

Ett enkelt oscilloskåp

Jag har länge tänkt att det skulle vara bra med ett enkelt oscilloskåp till mitt ’elektroniklabb’. Min gamla Amilo är ju pensionär men rycker in då och då som mätdator och där installerade jag programmet Soundcard Oscilloscope och byggde ihop ett enkelt ’interface’ (en spänningsdelare) så nu fungerar det för signaler som är max 5v och frekvenser upp till ca 20kHz vilket räcker mer än väl. För att testa alltihopa använde jag en liten signalgenerator jag köpte på ebay för ett tag sedan.

scope