own­room­ba­tracks

felix schwenzel in artikel

eins der we­ni­gen ge­rä­te de­nen ich er­lau­be sich in die cloud zu ver­bin­den (nach hau­se zu te­le­fo­nie­ren) ist un­ser rei­ni­gungs­ro­bo­ter mar­kus. da­mit be­kommt man nach je­der „mis­si­on“ eine kar­te in der iro­bot-app ser­viert. lo­ka­le kar­ten oder so­gar „live-maps“ sind über die ho­me­as­sistant room­ba kom­po­nen­te, bzw. die py­thon-bi­blio­thek von nick wa­ter­ton auch mög­lich, aber ziem­lich re­sour­cen-fres­send. der ser­ver auf dem die room­ba-bi­blio­thek aus­ge­führt wird, muss stän­dig ein bild ge­ne­rie­ren, was bei mei­nen letz­ten ver­su­chen zu ei­ner ste­ti­gen ser­ver-aus­las­tung von 80 pro­zent ge­führt hat. das ist nicht wirk­lich prak­ti­ka­bel.

weil die bi­blio­thek aber die ko­or­di­na­ten des room­ba stän­dig er­fasst, dach­te ich die­se ko­or­di­na­ten könn­te man doch auch viel­leicht mei­ner seit jah­ren auf dem ser­ver lau­fen­den own­tracks-re­cor­der-in­stanz über­ge­ben. own­tracks läuft im­mer im hin­ter­grund auf mei­nem (und dem bei­fah­re­rin­nen) han­dy und er­fasst un­se­re po­si­ti­on. das nut­ze ich vor al­lem für die an­we­sen­heits­er­ken­nung der au­to­ma­ti­schen woh­nung. wenn wir bei­de weg sind, ge­hen alle lich­ter aus, die hei­zung fährt run­ter und eine ka­me­ra, die die bal­kon­tür er­fasst, schal­tet sich ein. mit dem re­cor­der kann man un­se­re po­si­ti­ons­da­ten per­ma­nent, lo­kal, spei­chern. so sieht das für mei­ne po­si­ti­ons­da­ten der letz­ten zwei jah­re aus:

für mei­ne ber­lin-da­ten eig­net sich das tool ganz gut, um die schwar­zen fle­cken zu fin­den, in de­nen ich mal die stadt ken­nen­ler­nen könn­te oder spa­zie­ren ge­hen könn­te.

für aus­flü­ge in frem­de städ­te eig­net sich das tool ganz gut, um zu se­hen, wo man über­all war — und wo nicht.

und war­um soll­te ich das tool nicht auch be­nut­zen, um die fahr­ten des putz­ro­bo­ters zu er­fas­sen? die room­ba kom­pon­ne­te/bi­blio­thek gibt ko­or­di­na­ten aus, die sich im­mer re­la­tiv zum start­punkt be­fin­den, in mil­li­me­tern, po­si­tiv oder ne­ga­tiv zum start­punkt (oder zur la­de­sta­ti­on). die re­la­ti­ven room­ba-ko­or­di­na­ten las­sen sich re­la­tiv leicht in geo­ko­or­di­na­ten um­rech­nen. own­tracks er­war­tet min­des­tens wer­te für lon und lat, nimmt aber auch die ori­en­tie­rung dan­kend an, die der room­ba auch lie­fert. wenn die ko­or­di­na­ten in sen­sor­da­ten vor­han­den sind, kann ich eine au­to­ma­ti­on bau­en, die die­se da­ten um­rech­net und an den own­tracks re­cor­der schickt:

(klei­nes tech­ni­sches pro­blem: die ho­me­as­sistant kom­po­nen­te ak­tua­li­siert die ko­or­di­na­ten nur alle 20 se­kun­den. weil die bi­blio­thek von nick wa­ter­ton aber auch die room­ba-da­ten kon­ti­nu­ier­lich per mqtt ver­sen­den kann — und da alle 1-2 se­kun­den ak­tua­li­siert — grei­fen die ko­or­di­na­ten-sen­so­ren die da­ten dort ab.)

neh­me ich die va­ria­ble, die den ra­di­us der erde spei­chert (earth_r_mm) mit ei­nen mil­li­me­ter-wert, be­kä­me ich im re­cor­der eine kor­rekt ska­lier­te be­we­gungs­kar­te. ich fand den ki­lo­me­ter­wert aber an­schau­li­cher, mit dem aus den room­ba mil­li­me­ter-wer­ten ki­lo­me­ter wer­den. dann sieht eine „spot-rei­ni­gung“ des room­ba in own­tracks so aus:

nor­ma­le rei­ni­gungs­vor­gän­ge soll­ten dann von schwe­den, über po­len bis nach bay­ern rei­chen. das bes­te ist aber, dass hier zwar sehr vie­le da­ten an­fal­len, aber, so­weit ich sehe, pas­siert das äus­serst re­sour­cen­scho­nend — und zur not lässt sich die da­ten­über­tra­gung zum own­tracks re­cor­der auch de­ak­ti­vie­ren.


ok, das schlaf­zim­mer reicht nicht ganz bis schwe­den. aber bis dä­ne­mark.


ups, ge­ra­de ge­merkt, das bild hat­te die fal­sche zeit­ein­stel­lung. mar­kus ist na­tür­lich viel gründ­li­cher, als es auf dem vor­he­ri­gen bild scheint.