ROV-projekti

Viestiketju:
ROV-projekti

Eikös ne Venäläiset jo Kurskillaan todistaneet että sukeltamisella ja uppoamisella on vivahde-ero...
 
Taas mentiin tänään askel eteenpäin, posti toimitti kiinanpojan lähettämän ilmanpaineanturin, jonka varovasti epäilin olevan syy tuon ohjaus-softan jumitukselle.

https://www.banggood.com/MS5611-GY-...sor-Module-IICSPI-Communication-p-965980.html

Epäilys osui, ja nyt kun tuon softan mielestä puuttuneen anturin lisäsin, lähti tuo raspilla pyörivä softa juttelemaan pc-softan kanssa. Oikeastihan tuolla ilmanpainetiedolla ei pitäisi tässä olla mitään virkaa, mutta ilmeisesti tuo softa ei vaan osannut elää puuttuvan anturin kanssa. Ja moisen hankinta tuntui helpommalta vaihtoehdolta kuin kaivaa että missä moinen feature softassa makaa

Nyt ollaan siis siinä vaiheessa että testilaudan kallistelut näkyy softan keinohorisontti-mittarissa oikein, samoin kompassissa. Gamepadin tatit ohjaa ainakin logissa moottoreille menevää dataa. Vielä tuo valittaa että akkumonitorointi raportoi hassuja, ilmankos kun se palikka on vielä laatikossaan...

komentorivi itselle muistiin:
pi@rov-testilauta:~/ardupilot/build/pxfmini/bin $ sudo ./ardusub -A udp:10.39.1.65:14550

Samoin posti toimitti 21.3 tilatut kaksi tuikkua: http://www.dx.com/p/xm-l-waterproof...ht-torch-lamp-light-green-484262#.Wto7odPFKuU

Alkuun noiden kanssa riittänee kiinnityksen miettiminen, pidemmällä tähtäimellä tuo oli ajatus modata ulkoisella sähköllä toimivaksi, hyödyntäen tuon siis vesitiivinä kotelona.
 
Viime päivät on ollut takkuilua tuon softan kanssa, alkuun toimi siis tän mun pöytäkoneen kanssa, mutta sitten kun koitti siirtyä varsinaiselle ohjauskoneelle (mac --> windows), lakkasi tuo toimimasta ylipäätään. Ei siis toimi enää tuon alkuperäisen kokoonpanonkaan kanssa. Kertaalleen tuli jo vaihdettua koko aluksen tietokone uuteen (tai no, toinen samanlainen vanha raspberrypi hyllystä)

Samoin on joutunut hakkaamaan päätä seinään linuxin verkko-asetusten kanssa, johan mä kohta 20v oon osannut säätää kaksi ip-osoitetta samalle verkkokortille, mutta en näköjään enää kun on muuttunut tuo säätö jotenkin hienommaksi kuin /etc/network/interfaces-filen muokkaaminen.

Taas olisi aikataulua seuraavalle testille, parin viikon päästä mökkireissu kirkasvetisen järven rantaan ohjelmassa.
 
Löytyi yksi syy tuolle verkon takkuilulle, onnistuin sitten näköjään polttamaan tokana kokeilussa olleesta raspista verkkokortin tuolla poe-sähköllä. Ilmeisesti liittynee poe-sähkön hetkelliseen poiskäyntiin, joka aiheuttaa jossain tilanteessa virtapiikin joita nuo RasperryPi:den verkkokortit ennen uusinta 3B+ mallia eivät kestä. Verkkoliittimestä kun on säästösyistä jätetty joku suojakomponentti pois.

Tuon kun löysi, ja ohjeista huolimatta käytti vanhaa tuttua menetelmää, niin nyt on toimiva konffi jossa samalla kortilla on sekä dhcp:llä haettu (jos palvelin on saatavissa) että kiinteä ip-osoite. Toimii siis sekä kotiverkossa säätö + asioiden päivitys netistä, että suora yhteys tuon ohjauskoneen kanssa
 
Taas ollaan tätä edistämässä, kevät lähestyy ja tulee motivaatiota saada vene vesille. Pääsiäinen olisi taas yksi tavoite, tälläkin kertaa uittaa samaa runkoa kuin vuosi sitten, mutta tällä kertaa oikealla elektroniikalla ja pc-ohjauksella, sähkönsyöttö rannan puolelta. Ohjauspc pitäisi olla aikalailla jo jiirissä, vähän jotain liitinpaneelin työstöä ja muuta hienosäätöä tiedossa, eniten tekemistä aluksen elektroniikan ja koodin puolella.

Aluksen kone vaihtui Rasperryn 3b+ malliin, josko tässä ethernet kestäisi virtapiikit. Sivutuotteena tuossa on suoraan wifi, tässä kohtaa helpottaa säätöä kun pääsee kotiverkosta kirjautumaan sisään ilman että on kaapeli kiinni, loppukäytössä tuon läpi on toki ajatus ajaa kamerasignaalia ylös.Virransyötön tuohon joutui rakentamaan uusiksi, ei riittänyt normaali kiinalainen koekytkentäjohto raspin syöttöön, vaan piti vetää se paksummalla kaapelilla jottei tuo valita alijännitteestä. Virtakiskosta kun mittasi, jännite oli 5.02v, raspin pinnistä 4.42, ihmekään että toimi vähän huonosti. Mahdollisesti tuohon liittyen yksi muistikortti jossa mulla oli järjestelmä asennettuna, on päätynyt kernelpanikoivaksi heti bootissa, eli pääsin asentamaan koko setin uusiksi.

Pohjaksi puhdas Raspbian, ei siis ainakaan toistaiseksi RT-kerneliä. Olennaiset komennot historiasta kaivettuna:

passwd
sudo raspi-config
sudo apt-get update
sudo apt-get upgrade
mkdir .ssh
nano .ssh/authorized_keys

sudo apt-get install python-pip
sudo pip install future
sudo apt-get install git
git clone https://github.com/ardupilot/ardupilot

cd ardupilot/
git submodule update --init
cd Tools/ardupilotwaf/
nano boards.py
cd ..

grep -r -a2 -i HAL_BOARD_SUBTYPE_LINUX_PXFMINI *
grep -r -a2 -i "RCOutput_PCA9685" *
nano libraries/AP_HAL_Linux/HAL_Linux_Class.cpp
./waf configure --board=pxfmini
./waf --targets bin/ardusub

sudo ./build/pxfmini/bin/ardusub -A udp:10.39.1.51:14550

tiedostojen muutokset: (lähde: https://diydrones.com/profiles/blog...mart-drone-with-the-pi-zero-and-apm?id=705844 )

Special MINI-ZEE release:
1) The MPU 9250 is mounted on the Z-Axis, so we need to change :

CONFIG_HAL_BOARD_SUBTYPE == HAL_BOARD_SUBTYPE_LINUX_PXFMINI
, _default_rotation(ROTATION_YAW_270) = to ROTATION_NONE

2) The PCA9585 has no external clock, and the ESC are connected to ports 1-2-3-4, so we need to change:

static RCOutput_PCA9685 rcoutDriver(PCA9685_PRIMARY_ADDRESS, true, 3, RPI_GPIO_27); -to-
static RCOutput_PCA9685 rcoutDriver(PCA9685_PRIMARY_ADDRESS, false, 0, RPI_GPIO_27);


Taas ollaan tilanteessa jossa liikeet näkyy kivasti softassa, erinäisiä varoituksia puuttuvista ominaisuuksista ja firmiksen yhteensopimattomuudesta, saa nähdä millainen suo ne on perata. Paljon olisi myös lisää osia printattavaksi, mutta oma printteri vaatisi kovasti taas virittelyä, joten taidan keskittyä tekemään noita Hacklabin ( https://helsinki.hacklab.fi/ ) printterillä, ja pari juttua jo mielessä jossa kerholle taannoin hankitusta laserleikkuristakin on hyötyä.
 
Nyt tuli myöskin ihmeteltyä että mitenkäs tuo verkon säätö ihan oikeasti menee nykypäivänä. Vähän vaati pään raapimista, kun ohjeen mukainen lisäys

# It is possible to fall back to a static IP if DHCP fails:
# define static profile
profile static_eth0
static ip_address=10.39.100.2/24
static routers=10.39.100.1
static domain_name_servers=8.8.8.8

# fallback to static profile on eth0
interface enxb827eb667609
fallback static_eth0

tiedostoon /etc/dhcpcd.conf ei tuntunut saavan mitään muutosta aikaiseksi. Hyvän aikaa ihmettelyä ja totesin että niin, enhän mä varmaan tuota kiinteää osoitetta näe jos mulla ei ole linkkiä interfacessa ylhäällä, ja aina kun linkin kanssa olin testannut, oli siellä kotiverkon dhcp tarjoilemassa. Eli siis tuon ei pitäisikään näkyä esim ifconfigilla jos ei ole piuha kytkyssä.

pi@rov2:~ $ service dhcpcd status

oli komento joka antoi tarvittavan vihjeen ja sitten valkeni, toimiihan tuo siis juuri niinkuin pitää, ilman että käsin pakottaa osoitetta olemaan koko ajan. Mikä toki jossain tilanteessa olisi varmaan ihan hyvä vaihtoehto sekin olla olemassa, en tiedä mitä tuo softa mahtaa tykätä jos siltä lähtee hetkellisesti IP alta kaapelin käydessä irti. Toki tässä mun käytössä kun sähkökin tulee samaa kaapelia, tilanne tuskin tulee vastaan.
 
Johan tämäkin ehti taas yli vuoden olla hyllyssä, nyt pari viikkoa sitten kaivoin pc:n lainaan toiseen projektiin ja ajattelin että täytyy itse laitettakin taas jossain vaiheessa edistää.

Tänään sit osui kierrätyskeskuksen hyllyssä vastaan taas kaksi powerline-adapteria, eli siis ethernettiä verkkosähkön yli. Hintaa oli kohtuulliset 5e per kpl joten päätin ne noukkia matkaan josko olisivat modauskelpoiset. Pari kertaa aiemmin on vastaavia jo tullut hankittua ja purettua, mutta huonommalla menestyksellä.

Tämä zyxelin pari osoittautui oikein mainioksi siinä mielessä että sisäisen hakkuripowerin kun ohitti tarjoamalla 3,3v käyttöjännitteen, nuo boottasivat nätisti ja vaihtamalla ac-plugi ruuviterminaaliin, ja hyppylangoilla purkit yhteen, nuo kättelivät linkin nätisti. Eli siis nyt kädessä on modeemipari jolla saa satamegaisen ethernetin ajettua samassa parissa dc-sähkön kanssa. Ratkaisee ongelman tuosta tehonsyötön rajallisuudesta, ajattelin laittaa kaiutinkaapelin tuonne vetonarun sisään, jo varmaan 0,75mm2 pari on olennaisesti vähähäviöisempi kuin cat5, ja paksuutta on helppo lisätä. 48v dc siis tarkoitus ajaa, hakkurit on speksattu muistaakseni 150w joka pitäisi olla ihan riittävästi nykyisille moottoreille kaikissa tilanteissa.

Aiempien modulikokeiluiden kanssa ongelmaksi on siis tullut joko keskenään epäyhteensopimattomat salaukset jos purkeille on dc-sähkön saanut tarjottua, tai sitten keskenään yhteensopivissa purkeissa on tuo käyttösähköpuoli tavattoman monimutkaisesti tehty eikä sitä ole helposti saanut ohitettua.
 
Syntinen PLC pärisijä =D. Onneksi käyttö lie satunnaista.
 
Kovin satunnaista joo, ja uskoisin että mun kaapelini on normaalissa käytössä aika hyvin vaimennusaineen sisällä.

Ja tokihan tässä on myös se hyvä puoli, että ennen kun löysin tuon yhteensopivan ja modattavan parin, poistin noita kierrätyskeskuksen ja kirppareiden hyllyiltä serriin kuus muuta laitetta, eivät oo enää kuluttajilla pärisemässä :)
 
taas tätä hiukan tuli tutkailtua eteenpäin kun tuli vastaan että tuota ardusubin tukemaa kontrolleria, pixhawk 1:stä saa nykyisin neljälläkympillä (taannoisen parinsadan sijaan) kun on aika monta uudempaa sukupolvela laitteesta kopterikäyttöön tarjolla. Sellainen lähti tilaukseen, saa nähdä koska posti toimittaa kiinalaiselta ebay-kauppiaalta.

Toinen tähän liittyvä askel, kaupasta tarttui käsiin tälläinen testiin: https://www.clasohlson.com/fi/Vesitiivis-säilytyslaatikko-Cocraft-FSS/p/41-1604

Eli siis polykarbonaattinen tiiviksi mainostettu laatikko, jonka salvat ja tiivisteet on kovasti samaa henkeä tuon gopron sukelluskotetelon kanssa. Tuota voisi uittaa narun jatkona testissä sopivassa vesistössä ja katsoa kuinka tiivis tuo olisi. Voisi toimia tuota nykyistä putkea parempana runkona jos kaksi tuollaista liimaisi pohjistaan yhteen, saisi kaksi erillistä osastoa elektroniikalle.

Edellisten viestien plc-muuntimia tuli nyt testattua astetta eteenpäin, voi olla että tuo kysyinen malli ei kuitenkaan tässä toimisi, nyt kun kokeili sähköistää ne tuon linkkiparikaapelin kautta, ei bitti enää kulje. Eli siis DC 12v labrapowerista josta sitten pikku-hakkureilla tekee 3.3v käyttösähköksi. Jos ottaa nuo erikseen, bitti kulkee nätisti, mut ei ajatellussa käytössä jota maailmalla monet ovat onnistuneesti jollain mallilla käyttäneet.
 
Tavallaan projekti on taas edennyt, sit toisella tapaa ajatellen juuri tämä projekti ei nyt mihinkään. Juniori 4v tässä yksi päivä rupesi pohtimaan että ois kiva jos tehtäisiin vene, ja tämähän kuulosti myös isän mielestä kivalta idealta. Eilen sitten otettiin sunnuntaipuuhasteluksi ja ruvettiin tutkailemaan mitäs kaikkea veneen osan näköisiä esineitä kotoa voisi löytyä. Käsiin tarttui mm.

  • 3kpl leimastaan jo vuosikausia sitten vanhaksi menneitä sodastream-pulloja
  • syömäpuikkoja sekä nippusiteitä, joilla edellisistä sai hiukan veneen näköisen rungon kasaan
  • joskus tomaattien kastelussa käytössä olleita pieniä pentteripumppuja, 12V 2A
  • 6v 4,5Ah lyijyakkuja
  • rovin testiohjaimena olleen arduino-lauta ja moottoridriveri
  • nrf24l01 radiolinkkejä
  • toinen arduino ja muuta pientä sälää

Sunnuntai-iltana oli siis käsissä runko jonka kelluminen testattiin kylpyammeessa, maitopurkkeja sai kaksi laittaa päälle ja vielä kelluuttiin (mikä toki kolmella noin litran pullolla oli isälle selvää, mutta nuorimies vakuutettiin testillä.)
20210725_164335.jpg

Elektroniikka tuli myös yhdessä kasattua kuntoon, ihan ei toki vielä nelivuotiaalle arduinojen syvempi olemus auennut mutta sujuvasti eriväriset johdot menivät oikeaan liittimeen

20210725_195359.jpg

20210725_195402.jpg


Koodin kirjoitus tuohon jäikin sitten isin iltapuhteeksi iltasadun jälkeiseen aikaan, tälläisellä tutoriaalilla lähdin asiaa lähestymään ja eilinen päättyi siihen että helloworld meni läpi

https://howtomechatronics.com/tutorials/arduino/arduino-wireless-communication-nrf24l01-tutorial/



Tänään sitten jatketiin, ensin päivällä haettiin Biltemasta projektin toistaiseksi (ja tavoitteena että myös pysyvästi) ainoa uusi osa, kun toinen noista tomaattipumpuista oli muuttunut vuosien mittaan enempi äänentuottajaksi kuin veden liikuttajaksi (kyllä, tätä testattiin myös huolella kylppärin lavuaarissa...)

https://www.biltema.fi/veneily/venepumput/pentteripumput/upotettava-pentteripumppu-12-v-2000017743

Täysin sama tuote kuin 2011 ostettu edellinen.

Lisäksi tänään testattiin kelluvuutta sopivassa asennossa akku mukana, todettiin toimivaksi ja huomenna rungon kuivuttua voidaan kasata sitä lisää. Päästiin myös tekemään pieni koukkaus käyttöliittymäsuunnittelussa kun pohditiin että mihin kohtaan laatikkoa ( https://www.clasohlson.com/fi/Vesitiivis-säilytyslaatikko-Cocraft-FSS/p/41-1604 jollainen tässä taanoin rovin runkoa varten tuli ostettua) kannattaisi hallintanapit laittaa että ne olisivat mukavasti käsillä, huomioiden meidän erikokoiset kädet. Huomenna varmaan poraillaan reikiä tohon että saadaan ohjain suurinpiirten vesitiiviksi.

Tänä iltana toistui sama, iltasadun jälkeen siirryin koodin tutkailun maailmaan ja nyt paremmalla tutorialila samasta paikasta tuo lähti toimimaan niinkuin tavoite: https://howtomechatronics.com/projects/diy-arduino-rc-transmitter/


Siinämielessä tosiaan osa aikaisempaa projektia että tämän koodilla ja ohjauksella voi tuota sukeltavaakin versiota joskus ajaa, vaihtaa vaan radiolinkin johdossa liikkuvaan sarjaväylään.

Ja kun nyt on tarkoitus pysyä pinnalla, on koteloinnin suhteen homma paljon helpompi, ip55 pitäisi riittää pitkälle.
 
Takaisin
Ylös