Etikett: dartscore

DartScore reboot

Jag har många hobbyprojekt på gång och en del blir färdiga men andra pågår i åratal och en del somnar in helt men poppar upp då och då och pockar på uppmärksamhet igen.

Ett sånt projekt är DartScore som är en kul ide men har stannat av flera gånger. Senast pga någon svår algoritm men framförallt för att jag började renovera övervåningen och tog ner tavlan och kameran…

Nu är jag klar med övervåningen så pass att jag kan använda dart tavlan igen och då simmade projektet DartScore upp till ytan igen.

Darttavlan med temporär strömförsörjning till belysningen.
Skärmen under är tänkt att visa poängen när allt är klart…

Det senaste jag gjorde vara att strukturera om koden ganska mycket och det blev nog lite för mycket…

Fortsättning följer…

DartScore next gen

Jag insåg att jag måste göra ett omtag på hur själva tavlan och belysningen funkar för att kunna fortsätta. Så det har jag gjort idag. Det är en prototyp med en led-list som jag kommer att prova olika belysningspositioner med och sedan fräsa ett spår på insidan när jag vet var led-listen ska sitta för att ge bäst ljus.

Under tavlan sitter det en skärm där jag tänkt visa videoström och poäng men det är en bit kvar innan det funkar. Nu kan jag montera upp kameran igen och börja prova lite…

När jag bestämt placering för led-listen ska jag fräsa ett spår på insidan så den inte syns lika mycket och eventuellt behöver jag också en led-list med tätare mellan lysdioderna. Lite tillpassning och slipning återstår också och sedan ska jag nog stryka sidorna med bänkolja för att få en snyggare finnish.

Nästa byggprojekt

De senaste åren har vi renoverat ett rum eller två varje semester. Senast var det hallen och vardagsrummet. Övervåningen har stått på tur länge men det har alltid slutat med en stor suck för att väggarna är täckta av bokhyllor fulla med böcker och då blir det jobbigt om man ska tapetsera. Men man kan ju ’ceppssa’ (continious evoloution performed partly in small steps) som vi säger på jobbet, dvs ta lite i taget och se var det slutar…  Så det tänker jag göra nu. Det blir nog mest jag då Ewa inte är lika intresserad av övervåningen men förhoppningsvis hjälper hon till om det behövs.

Utgångsläget syns på bilden nedan. Planen är att först sätta upp skjutdörrar för lagerhyllan (höger i bilden) och fixa till ’dart-delen’ med schysst belysning och en skärm för poängvisning med dartscore under darttavlan. Nästa steg blir nog att sätta upp ett nytt innertak.

 

Darthörnet med lagerhyllan till höger som borde fått de tänkta skjutdörrarna för flera år sedan…

MiniHack

I går var det dags för MiniHack igen. En kul tillställning för mig och några andra nördar som träffas under en dag och jobbar med olika hobbyprojekt.  Jag kom en bra bit framåt när det gäller strukturen och maskineriet för DartScore! Ett annat av mina projekt visades med projektor på en stor duk, nämligen direktsändning från holken. Där var det också full fart!

Några av projekten det jobbades med:

Raspberry Pi och en 8×8 LED matris

Mat ska man också ha. Pizza från Huddinge Pizza-butik har blivit tradition. Under kartongen finns lite skisser till DartScore.

Arduino, we love it…

Coola Nixie rör!

DartScore rebirth!

Jag fick en kommentar på mitt projekt ’DartScore’ här om dagen och efter lite mailväxling med Hannes som har ett liknande projekt på gång så har mitt intresse återuppstått och jag har suttit och kodat en hel del idag. Hittills mest för att få igång hans kalibreringsrutin för darttavlan och se hur den funkar. Förhoppningsvis kan vi tillsammans få till något som funkar ’hela vägen’.

Ett annat problem jag haft är att inte kunna läsa in bilder till opencv från en videofil men det har jag också löst idag vilket gör att test och debug blir mycket lättare.

Efter detta har jag tagit tag i att sätta upp kameran på ett stadigt sätt men fortfarande återstår en bra och stabil ljussättning av tavlan som också är en kritisk detalj…  Nu funkar det åtminstone så pass att jag kan spela in en film som kan användas för kodning och testning.

Nytt takfäste för kamera… Det är en prototyp.

Tavlan och kameran. Nästa steg för prototypen blir att hitta en bättre och stabilare belysning. Helst en spotlight som går att ’dimma’.

En bild ur bildströmmen med kameran monterad enligt bilderna ovan. Kameran startar i ’monteringsläge’ vilket betyder att man vrider till den på ett visst sätt för att sedan kunna göra kalibreringen automatiskt.

DartScore v. 2

Arbetet med hobbyprojekten går i skov och idag har det varit lite av ett ’DartScore’-skov… Nu fungerar installationen på en Raspberry Pi 3 och jag har även uppgraderat hårdvaran. Problemet tidigare var att knapparna satt på själva kameran och även om man satte fast den så hårt det gick rörde den sig ändå lite när man tryckte på en knapp och då funkar det ju inte… Så nu har jag lyft ut knapparna, lagt till fyra statusdioder och en switch. Jag gjorde ett kretskort som ska sättas i en liten låda och som i sin tur kan sitta i taket bredvid kameran. Prestandan på RPi 3 är ju också rejält mycket bättre än på den B+ som jag använde förut. När jag får nåt som funkar hyfsat igen är det dags för en uppdatering på GitHub men det får vänta lite.

20160417_154615

Den nya hårdvaran till DartScore. Klämman är tänkt att sättas fast i en stång som sitter längs taket och kameran kan då enkelt justeras in.

20160417_154733

Nördhörnan efter lite arbete… Det är lätt att ’stöka till det’.

Raspberry pi 3

Jag var i Skärholmen och ’råkade’ komma hem med en Raspberry pi 3 från Kjell&Co. Den ska bli basen i nästa generation av ’DartScore’. Prestandamässigt borde det vara stor skillnad mot den jag använder nu som är av generation 1. Då ’foot-print’ är samma går det att använda samma låda med knappar etc som jag hade till projektet tidigare men sen är det väl en annan sak om jag gör det. Det var svårt att trycka på knapparna utan att rubba kamera hur hårt jag än drog fast monteringsklämmorna så knapparna får kanske flytta ut i en separat låda.

Utrustad med 1 GB RAM-minne och en 64-bitarsprocessor på 1,2 GHz (ca tio gånger snabbare än den första Pi-datorn).

Utrustad med 1 GB RAM-minne och en 64-bitarsprocessor på 1,2 GHz (ca tio gånger snabbare än den första Pien).

DartScore

Mitt projekt ’dartscore’ tog ett litet steg framåt igen då jag förbättrade prestandan i bildhanteringen rejält och även om det inte riktigt räcker ännu så är det åtminstone på väg åt rätt håll. Bilden visar hur arrangemanget i taket ovanför tavlan ser ut för tillfället. I lådan sitter några knappar för att kunna hantera kalibrering av programmet mot tavlan och lite annat. En långtryckning på röda knappen gör tex reset på programmet vilket kan vara bra att ha ibland… Mjukvaran till projektet finns på GitHub.

Hårdvaran till DartScore

Hårdvaran till DartScore

Ett litet genombrott

Projektet DartScore tog ett litet steg framåt idag när jag gjorde en kodmodul som jämför två bilder och hittar var senaste pilen träffar tavlan. Bilden nedan är från testprogrammet som visar en grön ruta runt senaste träffen och beroende på att kameran ser snett uppifrån sitter spetsen i övre högra hörnet för det mesta. Ingen rocket-science men lite coolt ändå.  I nästa steg ska jag analysera rutan med pilen och se var spetsen är lite mer exakt. I första versionen ska programmet räkna poäng per pil och förstå när det är en ny omgång (tavlan blir tom igen). I den versionen kan jag också se hur noggrant det blir men får troligen komplettera med en kamera till eller kanske någon annan form av detektering.

dartsfound

DartScore

Ett projekt för att räkna poäng i dart med hjälp av bildigenkänning. Det har pågått i åratal men nu känns det som att det lossnat lite. Projektet har startats om och bytt strategi flera gånger och nu är det uppdelat i lite olika delar och jag har även hittat andra likasinnade så nu har jag lite hjälp också!

Bilden till vänster visar den nu ganska färdiga taveluppsättningen med lysdiodsbelysning och en dataskärm som ska visa resultatet.

Förutom detta består systemet av 2 st raspberry pis. En som filmar darttavlan och ’hittar’ var pilarna träffar och en som ska sköta bildskärmen och även (kanske) filma spelarna för att se vems tur det är etc… Kommunikationen mellan dom är tänkt att ske med LCM via mitt trådlösa nätverk och det ska jag försöka få igång som nästa steg…

DartScore på mitt Github konto