Jump to content

Båtautomasjon med batteriovervåking og Zigbee


Sjøbliss

Recommended Posts

Mastiff skrev for 5 timer siden:

Da programmerte jeg min etter det som sto her: http://docs.hatlabs.fi/sh-esp32/pages/tutorials/nmea2000-gateway/#software

 

Jeg brukte en Windows-pc etter å ha fiklet litt med en Pi, jeg fikk ikke lastet inn riktig plug-in til greia. Men med Windows gikk det ganske greit. Så koblet jeg den til NMEA-2000 nettverket og fikk straks fram resultater:

 

image.png.85f3e85a55e1ef46d602c9575de178df.png

 

Så det funket med en gang! Jeg koblet ikke til 12V pluss og minus til ESP-en, det funket uten. Jeg har mailet Hatlabs for å sjekke om det er noe problem med å gjøre det sånn.

 

 


Kult! Og du har til og med fått trimvinkel?

Link to post
Share on other sites

Dreuf skrev for 16 timer siden:

Jeg har mange av de runde Xiaomi Zigbee sensorene og er fornøyd med dem. Men de ser ut til å ha blitt dyrere.

 

I båt og bobil hvor avstanden ikke er stor så bruker jeg disse også har jeg lagt inn ATC firmware NOK 51.17  30%OFF | XIAOMI Mijia Bluetooth Thermometer 2 Wireless Smart Electric Digital Hygrometer Thermometer Work with Mijia APP With Battery
https://a.aliexpress.com/_mLLO11w

 

Har også prøvd de store runde Xiaomi med display men de spiser batteri.


Takk for tips. Batterilevetid er viktig. Heller litt færre oppdateringer. 

Link to post
Share on other sites

I denne sammenhengen kjører jeg SignalK på den, en NMEA-server som gjør at jeg kan ha en mobil stående på holder på styreplassen foran og bruke den som skjerm for dybde, fart og sånt. Med NMEA 2000 og motorinterface på Suzukien kan jeg  i tillegg få alt fra motoren, som turtall, tiltvinkel og bensinforbruk.

 

I tillegg bruker jeg den til å kjøre Node-RED og Home Assistgant, som styrer en bunke ESP32-er i båten, med diverse sensorer og releer. Blant annet strømsensor på begge batteriene og det å kunne slå på lys og sånt. Etter hvert skal den legges opp sånn at jeg kan trykke på mobilen når jeg går fra hytta, så kjøres motoren ned og startes og er klar til bruk når vi kommer ned.

 

Jeg har også et musikkbibliotek på nesten 200 000 låter på en USB-harddisk koblet til den, styrt av J. River Media Center (som jeg også bruker på alt annet, pc-er og Pi-er). Det er sikkert noe meg jeg har glemt, som jeg bruker den til også...

Link to post
Share on other sites

Jeg tenkte jeg skulle gjøre et forsøk med en NJK-5002C magnetsensor i morgen, for å vite når motorheisen står i øverste stilling, så motoren kan tiltes helt opp. Bare ett lite problem: Hvordan i h... fester jeg magneten på motorheisen? Den ser sånn ut:

 

proxy-image?piurl=https%3A%2F%2Fwww.finglai.com%2Fimg%2Fcomp%2Ffl-en%2Fsensors%2Fmagnetic-proximity-sensors%2FNJK-5002%2FNJK-5002C-20MM%2FNJK-5002C-20MM.jpg&sp=1665390790Tac9e196943319004b4b319bcc517940f513747c6cd899c0a6433efbc6e3a1c3a

 

Altså bare en liten knapp. Det nærmeste jeg kan komme, er å bruke tre biter av aluminiumsplater, der den innerste er festeplate, jeg borer et hull stort nok til sensoren i den midterste og borer et hull som er akkurat litt mindre enn sensoren i den ytterste. Da vil det meste av magneten være fri fra aluminiumet, og jeg kan få sensoren på mindre enn 10 mm avstand. Denne fester jeg på motorheisen, ved å gjenge opp to hull og skru den fast. Regner med at ikke to 5 mm hull som går en centimeter inn i heisen på kortsiden av metallet vil svekke den noe særlig.

 

Så skal vel brun på 12V pluss og svart på 12V minus, og så er utsignalet på den svarte, som skal enten til et relé eller til en pinne på ESP-en, det må jeg bare finne ut ved å måle signalet.

 

Høres det ut som om det kan funke?

Redigert av Mastiff (see edit history)
Link to post
Share on other sites

Og et helt annet spørsmål, som angår det samme: Motorinterfacen gir trimvinkel med tenningen på, men den er død når den ikke er på.  Jeg trenger en måte å måle trimvinkelen på når tenningen ikke står på (for å kunne kjøre ned motoren med automatiseringen), og da lurer jeg på om jeg kan gjøre som følger:

 

1. Koble et vekslerelé på kabelen fra motorinterfacen til trimsensoren i motoren (som altså er et potmeter som gir motstand fra 80 ohm i nederste stilling, der kartplotteren viser 0 % tilt, og til rundt 5 idet motoren begynner å gå fort oppover og mister kjølingen), sånn at med tenningen på er motorinterfacen koblet til sensoren, mens med tenningen av, er en annen kabel koblet til sensoren.

 

2. Føre den andre kabelen til en INA219 (som jeg har liggende noen av) så den måler spenningen ut fra sensoren, mens jeg sender 5V fra ESP-en som spenning til sensoren. Det er 1,7 volt mer enn interfacen sender (3,3V), men så vidt jeg har forstått, vil en analog trimklokke sende full spenning (opptil 14.7V ved full lading) til sensoren, så det kan da ikke skade den.

 

3. Måle volten som kommer tilbake fra INA219-en og så beregne ut fra det hvor motoren står.

Link to post
Share on other sites

Mastiff skrev for 6 timer siden:

Jeg tenkte jeg skulle gjøre et forsøk med en NJK-5002C magnetsensor i morgen, for å vite når motorheisen står i øverste stilling, så motoren kan tiltes helt opp. Bare ett lite problem: Hvordan i h... fester jeg magneten på motorheisen? Den ser sånn ut:

 

proxy-image?piurl=https%3A%2F%2Fwww.finglai.com%2Fimg%2Fcomp%2Ffl-en%2Fsensors%2Fmagnetic-proximity-sensors%2FNJK-5002%2FNJK-5002C-20MM%2FNJK-5002C-20MM.jpg&sp=1665390790Tac9e196943319004b4b319bcc517940f513747c6cd899c0a6433efbc6e3a1c3a

 

Altså bare en liten knapp. Det nærmeste jeg kan komme, er å bruke tre biter av aluminiumsplater, der den innerste er festeplate, jeg borer et hull stort nok til sensoren i den midterste og borer et hull som er akkurat litt mindre enn sensoren i den ytterste. Da vil det meste av magneten være fri fra aluminiumet, og jeg kan få sensoren på mindre enn 10 mm avstand. Denne fester jeg på motorheisen, ved å gjenge opp to hull og skru den fast. Regner med at ikke to 5 mm hull som går en centimeter inn i heisen på kortsiden av metallet vil svekke den noe særlig.

 

Så skal vel brun på 12V pluss og svart på 12V minus, og så er utsignalet på den svarte, som skal enten til et relé eller til en pinne på ESP-en, det må jeg bare finne ut ved å måle signalet.

 

Høres det ut som om det kan funke?

NJK-5002C kommer i litt ulike utgaver. Har du den de pleier å kalle ‘open collector’ så kan du bare forsyne med 12V fra båtens system og ta utgangen til en GPIO med pull-up på. Denne pinnen vil da bli lav når sensor detekterer magneten. Men sjekk at det ikke står spenning på utgangskabelen når den har fått 12V +/-, da noen av de har en intern pull-up. I så fall må du ha en spenningsdeler eller bruke INA. Du kan bruke lavere spenning enn 12V også men under 6V gav veldig dårlig deteksjon er min erfaring så da har jeg bare brukt 12V (står 6-36V i noen specer, 5-36V i andre).

 

Bildet av heisen var ikke synlig for meg men jeg ville vel prøvd å lime magneten på med en tynn plastplate og vannfast monteringslim. Det pleier å sitte utrolig godt.

Redigert av Fantino (see edit history)
Link to post
Share on other sites

Mastiff skrev for 5 timer siden:

Og et helt annet spørsmål, som angår det samme: Motorinterfacen gir trimvinkel med tenningen på, men den er død når den ikke er på.  Jeg trenger en måte å måle trimvinkelen på når tenningen ikke står på (for å kunne kjøre ned motoren med automatiseringen), og da lurer jeg på om jeg kan gjøre som følger:

 

1. Koble et vekslerelé på kabelen fra motorinterfacen til trimsensoren i motoren (som altså er et potmeter som gir motstand fra 80 ohm i nederste stilling, der kartplotteren viser 0 % tilt, og til rundt 5 idet motoren begynner å gå fort oppover og mister kjølingen), sånn at med tenningen på er motorinterfacen koblet til sensoren, mens med tenningen av, er en annen kabel koblet til sensoren.

 

2. Føre den andre kabelen til en INA219 (som jeg har liggende noen av) så den måler spenningen ut fra sensoren, mens jeg sender 5V fra ESP-en som spenning til sensoren. Det er 1,7 volt mer enn interfacen sender (3,3V), men så vidt jeg har forstått, vil en analog trimklokke sende full spenning (opptil 14.7V ved full lading) til sensoren, så det kan da ikke skade den.

 

3. Måle volten som kommer tilbake fra INA219-en og så beregne ut fra det hvor motoren står.

Det burde fønke med et rele for å bruke sensorpotmeteret med tenningen av. Men pass litt på ift å sette spenning rett over den. Det er nok en indre motstand i trimklokka/interface som hindrer at det går for mye strøm. Setter du 5V over 5Ohm fra ESP går det 1A og da er fort strømforsyningen din toast. Og muligens også potmeteret i sensoren. Du trenger en passende motstand i serie med potmeteret for å begrense strømmen. Spenningen du setter på vil da variere med den variable motstanden i sensoren (og strømmen også forsåvidt). 

Redigert av Fantino (see edit history)
Link to post
Share on other sites

@Fantino Takk, men når det gjelder det første, tar du nok feil av meg og en som skjønner hva du snakker om, for å snu litt på en gammel actionklisjé,,, :giggle: Jeg sjekket den, og med 12V inn på brun og svart, kommer det 5V ut når den er borte fra magneten og så blir det 0 når magneten er foran. Så i noenlunde ikke-elektronikkingeniør-klartspråk betyr det at jeg kan koble den direkte på en pinne og i så fall hvilken, eller må jeg kjøre den gjennom noe mikkmakk? Husk at jeg aldri har satt mine bein i en løs motstand eller noe annet, jeg har bare operert med ferdige dingser, som ESP-er og INA-er. :blush:

 

Jeg vil ikke lime magneten, for jeg må ha muligheten til å justere høyden på den (ved å ha avlange spor i festeplata, istedenfor runde hull), men det med plastplata var lurt. Jeg kan lime magneten mellom festeplata og ei plastplate!

 

Og det siste hørtes litt for skummelt ut. Da tror jeg heller jeg setter et relé på tenningen, så den får strøm og jeg kan avlese fra motorinterfacen. Jeg trodde jeg måtte koble til dødmannsbryteren også (trådløs sådan), men det viste seg å være unødvendig da jeg sjekket nå. Interfacen kommer med tenningen på uansett.

 

Edit: Jeg fant denne, men vet ikke om jeg forsto den riktig. Hvis jeg gjorde det, så kan man koble 5V til digitale inputpinner, men jeg vet ikke hvilke pinner som er det, det sto så mye ulikt på de sidene jeg Googlet.

 

https://www.qworqs.com/2021/05/19/are-the-esp32-and-esp8266-5v-tolerant-yes-they-officially-are/

Redigert av Mastiff (see edit history)
Link to post
Share on other sites

Mastiff skrev for 3 timer siden:

@Fantino Takk, men når det gjelder det første, tar du nok feil av meg og en som skjønner hva du snakker om, for å snu litt på en gammel actionklisjé,,, :giggle: Jeg sjekket den, og med 12V inn på brun og svart, kommer det 5V ut når den er borte fra magneten og så blir det 0 når magneten er foran. Så i noenlunde ikke-elektronikkingeniør-klartspråk betyr det at jeg kan koble den direkte på en pinne og i så fall hvilken, eller må jeg kjøre den gjennom noe mikkmakk? Husk at jeg aldri har satt mine bein i en løs motstand eller noe annet, jeg har bare operert med ferdige dingser, som ESP-er og INA-er. :blush:

 

Jeg vil ikke lime magneten, for jeg må ha muligheten til å justere høyden på den (ved å ha avlange spor i festeplata, istedenfor runde hull), men det med plastplata var lurt. Jeg kan lime magneten mellom festeplata og ei plastplate!

 

Og det siste hørtes litt for skummelt ut. Da tror jeg heller jeg setter et relé på tenningen, så den får strøm og jeg kan avlese fra motorinterfacen. Jeg trodde jeg måtte koble til dødmannsbryteren også (trådløs sådan), men det viste seg å være unødvendig da jeg sjekket nå. Interfacen kommer med tenningen på uansett.

 

Edit: Jeg fant denne, men vet ikke om jeg forsto den riktig. Hvis jeg gjorde det, så kan man koble 5V til digitale inputpinner, men jeg vet ikke hvilke pinner som er det, det sto så mye ulikt på de sidene jeg Googlet.

 

https://www.qworqs.com/2021/05/19/are-the-esp32-and-esp8266-5v-tolerant-yes-they-officially-are/


Hvis du får 0/5V ut så bør du kunne kople utgangen direkte til GPIO uten mer mikkmakk ja! Som du fant ut i linken under er både ESP32 og 8266 5V tolerante. Ville dog sjekket at ikke 14.7V gav høyere utspenning på utgangen da, om du forsyner NJK-500 direkte fra batterispenning.

 

Versjonen jeg har av NJK-500 fønker bare slik at utgangen blir ‘jordet’ når den detekterer magneten, dvs utgangen må ‘dras’ høy via en motstand til 5V, så blir den lav når den ‘jordens’. Men det er altså da irrelevant i ditt tilfelle.

Link to post
Share on other sites

Fint, takk! Da trenger jeg ikke noe mikkmakk. Så da blir det bare noe sånt:

 

binary_sensor:
  - platform: gpio
    pin: 21
    name: "Motorheis1"
  - platform: gpio
    pin: 22
    name: "Motorheis2"

 

Jeg har noen stykker av de sensorene liggende, så jeg skal kjøre dobbelt i tilfelle en magnet skulle forskyve seg eller falle av. Men jeg får finne helt ut av programmeringen senere i uka, etter i morgen. I morgen blir det den eneste dagen på minst en uke der jeg kan faktisk holde på i båten og la verktøyet ligge rundt overalt, som jeg pleier. Jeg har en del ting jeg skal montere og justere, og jeg skal montere maskinvaren til dette også. Jeg kan eksperimentere med programmeringen oppe i hytta og så gå ned til båten og kjøre opp og ned heisen og se om det virker.

Link to post
Share on other sites

En liten ting: Jeg måtte koble strømmen til NEMA 2000-nettverket til en kurs som har strøm hele tiden, ikke bare når tenningen er på for å få Sailor Haten til å bli pålitelige. For da jeg startet opp Pi-en uten å ha strøm på nettverket, kom det ikke inn noe data da jeg koblet til nettverket etterpå. Jeg måtte ta en omstart av Pi-en (så USB-portene ble strømløse noen sekunder akkurat i selve omstarten) for å få nettet inn igjen. Det gjelder selve Sailor Haten, for jeg kunne se at den blå dioden, som blinker hver gang det kommer inn data og altså ganske fort når motoren er i gang, bare blinket sakte som når den ikke er tilkoblet.

Link to post
Share on other sites

Mastiff skrev for 3 timer siden:

En liten ting: Jeg måtte koble strømmen til NEMA 2000-nettverket til en kurs som har strøm hele tiden, ikke bare når tenningen er på for å få Sailor Haten til å bli pålitelige. For da jeg startet opp Pi-en uten å ha strøm på nettverket, kom det ikke inn noe data da jeg koblet til nettverket etterpå. Jeg måtte ta en omstart av Pi-en (så USB-portene ble strømløse noen sekunder akkurat i selve omstarten) for å få nettet inn igjen. Det gjelder selve Sailor Haten, for jeg kunne se at den blå dioden, som blinker hver gang det kommer inn data og altså ganske fort når motoren er i gang, bare blinket sakte som når den ikke er tilkoblet.


Merkelig egentlig, for n2k = Can bus skal vel være uhyre stabilt og enheter kan slås av og på. Er det Pi’ens feil mon tro? Ser den de andre n2k enhetene når strømmen slås på? (Utenom Sailor Hat mener jeg). Hvis den heller ikke ser de andre enhetene er det kanskje Pi som burde ha en auto reset rutine for n2k nettverket? Eller har jeg misforstått galt igjen? 😁

Link to post
Share on other sites

Ikke vet jeg hva du har misforstått helt feil... :lol: Men dette skjer når hele nettverket er av (strømmen til backbone er koblet ut), jeg kan slå av og på plotter og motorinterface som jeg vil. Men Pi-en kan jo ikke se noen n2k-enheter i det hele tatt, alt går gjennom Sailor Haten, det er jo akkurat det som er poenget med greia.

Link to post
Share on other sites

Ellers syns jeg dette ble ganske greit, bortsett fra én ting: Jeg får ikkefram liter per nautisk mil i SignalK. Kan det være at det er fordi det er noe Garminen beregner ut fra GPS-farten sin, siden ikke motoren har knopmåler koblet? De viktigste tallene nederst, med størst bokstaver. Dybden er det aller viktigste når jeg setter teiner.

 

Ingen beskrivelse er tilgjengelig.

Link to post
Share on other sites

I så fall er det jo litt dumt at ikke plotteren kan sende det ut over NMEA, men det virker ikke som om den sender noe som helst over NMEA 2000.

 

For å få det må jeg vel lage et dashbord i Hass, der jeg beregner forbruk per nautisk mil med en automasjon hver gang dataene kommer inn. Lurer på om det er noe som vil burke mye prosessorkraft i Pi-en.

Link to post
Share on other sites

Mastiff skrev for 2 timer siden:

Ikke vet jeg hva du har misforstått helt feil... :lol: Men dette skjer når hele nettverket er av (strømmen til backbone er koblet ut), jeg kan slå av og på plotter og motorinterface som jeg vil. Men Pi-en kan jo ikke se noen n2k-enheter i det hele tatt, alt går gjennom Sailor Haten, det er jo akkurat det som er poenget med greia.

En hel del antakelig 😁 Mye læring her for meg: Hvordan snakker Pi med Sailor Hat?

Link to post
Share on other sites

Mastiff skrev On 15.10.2022 at 16.26:

Den plugges i Pi-en med usb (micro-usb i Sailor Haten). Det trengs ikke mer strøm til den enn det, hvis man ikke har mye andre sensorer i tillegg. Så den blir en serieport, og så setter man opp den serieporten i SignalK og får inn masse deilige data. :giggle:

Kikket litt på skjemaene og det ser jo ut som om Sailor Hat får strømforsyning både fra Canbus, USB og dedikert strømforsyning (som du ikke har brukt). Så lenge Canbus ikke har strøm vil den vel da resettes når USB blir strømløs. Så en enklere løsning for å få den på ‘nett’ igjen kan gjerne være å bruke den dedikerte forsyningen og fore fra samme forsyning som Pi. Men gjerne greit at Canbus har strøm hele tida - aner ikke hvor mye forbruk det evt representerer. 

Redigert av Fantino (see edit history)
Link to post
Share on other sites

Jeg tror faktisk ikke den gir strøm motsatt vei, den dedikerte strømforsyningen er bare for å drive selve Sailor Haten, og det gjøres helt greit via USB så lenge man ikke har mye annet på den (releer, sensorer osv.). Men jeg har sendt en mail til firmaet, de pleier å svare ganske kjapt, så jeg skal si fra om hva jeg får vite.

Link to post
Share on other sites

Hm... Jeg skal se hva han svarer, kanskje det kan være løsningen. Ikke mye til endringen som skal til for å fikse i boksen, jeg fører inn 12V til en 5V Hobbywing-strømforsyning uansett. De små greiene er fantastiske. Jeg må ha 20 stykker i bruk, og bare en eneste har sviktet. Jeg har en ny bunke på vei opp fra Kina, jeg har ingen i reserve akkurat nå, så jeg må kannibalisere noe hvis en av rakkerne svikter.

Link to post
Share on other sites

Delta i diskusjonen

Du kan skrive innlegget nå, det vil bli postet etter at du har registrert deg. Logg inn hvis du allerede er registrert.

Guest
Svar på dette emnet

×   Du har postet formatert tekst..   Fjern formattering

  Only 75 emoji are allowed.

×   Innholdet du linket til er satt inn i innlegget..   Klikk her for å vise kun linken.

×   Det du skrev har blitt lagret.   Slett lagret

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...