submarin robot de diy pentru a studia apele râului Moskva

Această scurtă istorie a subacvatice manager de robot autonom manageri foarte mijloc. Scopul actual este de a crea o hartă reală a șenalului navigabil al râului Moscova. Când caută nici o problemă pentru a găsi o hartă. dar ridică problema relevanței sale. Patul râului este în continuă schimbare. Eroziunea malurilor și schimbarea harta canalului. Aceste procese sunt deosebit de evident zăpadă considerare alimentat Moscova râuri (61%), argilă (27%) și ploaia (12%). Scopul final este de a crea un robot subacvatic multifuncțional pentru a studia la mare adâncime. Oceane, care acoperă 2/3 din suprafața Pământului a fost studiat cu numai 5%. simplu „pilot automat“ este necesar pentru a crea un robot autonom.

Cum sa faci un pilot automat la prețuri accesibile și simplu pentru DIY-proiecte și naviga-l peste râul Moskva?

submarin robot de diy pentru a studia apele râului Moskva


Râul București este artera principală a orașului Moscova, lungimea în orașul de 80 km. Lățimea râului în interiorul orașului poate varia intre 120 la 200 m, de partea cea mai îngustă în apropierea Kremlinului cea mai largă în apropierea Luzhniki. Se consideră că viteza de curgere râu de 0,5 m / s. Este un mediu favorabil pentru testarea robotului.
Poate că ar fi mai eficient și mai ușor de a face o barca, dar sarcina de a face robotul subacvatic pare mult mai interesant.

desen

Robot submarin pentru a studia apele râului Moscova.

submarin robot de diy pentru a studia apele râului Moskva

Locația aproximativă elementele pe care le-am văzut asta.
submarin robot de diy pentru a studia apele râului Moskva

Instalarea motor cu colector

submarin robot de diy pentru a studia apele râului Moskva

Servo-direcție unitate

submarin robot de diy pentru a studia apele râului Moskva

Adâncime de direcție servo acționare

submarin robot de diy pentru a studia apele râului Moskva

Ca o glumă, se poate spune că mă pregătesc pentru concursul X-Prize.

submarin robot de diy pentru a studia apele râului Moskva

Scopul este de a dezvolta un robot subacvatic autonom, mai degrabă decât ROV „a. (Operat Remotely vehicul subacvatic).

Partea de software de control al

„Ne întâlnim destinul său pe drum, care a fost ales să se retragă din ea“
Zhan De La Fontaine

SL4A Python

Prima linie importă Android bibliotecă, droid apoi creați un obiect cu care API-ul Android'a second-hand. Ultima linie afișează mesajul «Hello, World!» Pe ecranul dispozitivului.
Acum este timpul să se familiarizeze cu API-ul, care prevede SL4A.

Construcția de căi. amplasat

submarin robot de diy pentru a studia apele râului Moskva

Utilizarea Yandex.maps Google.maps sau pentru a alege un punct în mijlocul râului. Acesta este un itinerar de probă. Pentru testare și punere în funcțiune, folosind o versiune trunchiată a punctelor.
[55.671110, 37.686625] [55.668448, 37.675467] [55.660847, 37.671776] [55.654649, 37.671175]

submarin robot de diy pentru a studia apele râului Moskva

Python pentru Android. Funcțiile pe care le-am fost în căutarea

baterie:
droid.batteryStartMonitoring () - lucru nachalo cu bateria.
droid.batteryStopMonitoring ()
droid.batteryGetHealth () - returnează starea bateriei (1-necunoscut, 2 bun, 3 - supraîncălzire, 4 - mort, 5 - suprasarcină, 6 - eroare necunoscută)
droid.batteryGetStatus () - returnează starea bateriei (1 - necunoscut 2 - încărcat, 3 - descãrcat, 4 - nu de încărcare, 5 - maxim de încărcare)
droid.batteryGetTechnology ()
droid.readBatteryData () - Date baterie.
droid.batteryGetTemperature ()
droid.batteryGetVoltage ()
droid.batteryGetLevel ()

Bluetooth:
droid.checkBluetoothState () - verificați dacă Bluetooth activat
droid.toggleBluetoothState () - dacă este adevărat include între paranteze și oprit când este fals
droid.bluetoothAccept () - ia compus
droid.bluetoothActiveConnections () - Verifică dacă conexiunea
droid.bluetoothGetConnectedDeviceName ()
droid.bluetoothMakeDiscoverable () - între paranteze, puteți specifica intervalul de timp în secunde
droid.bluetoothStop ()

Wi-Fi:
droid.checkWifiState () - verifică dacă sunt incluse Wi-Fi
droid.toggleWifiState () - dacă este adevărat include între paranteze și oprit când este fals
droid.wifiStartScan ()
droid.wifiGetScanResults ()
droid.wifiGetConnectionInfo ()

Alte setări:
droid.checkAirplaneMode () - verifică dacă modul este activat în „Avion“
droid.checkRingerSilentMode () - verifică dacă modul silențios activat
droid.checkScreenOn () - în cazul în care este activat ecranul
droid.toggleRingerSilentMode () - include mut
droid.toggleAirplaneMode ()
droid.toggleVibrateMode ()

Obținerea de informații despre setările:
droid.getMaxMediaVolume ()
droid.getMaxRingerVolume ()
droid.getMediaVolume ()
droid.getRingerVolume ()
droid.getScreenBrightness ()
droid.getScreenTimeout ()
droid.getVibrateMode ()

Setare:
droid.setMediaVolume ()
droid.setRingerVolume ()
droid.setScreenBrightness ()
droid.setScreenTimeOut ()

  • Setarea trimiterea datelor prin Bluetooth la Arduino.
  • Obținerea Arduino cu datele de adâncime. Voi măsura adâncimea senzorului ultrasonic.
  • Trimite detaliile măsurătorilor de poziție și adâncimii curente la server.
  • Rafinarea structurii. Barca ar trebui să fie o flotabilitate neutră la adâncimea puteți schimba cârmele adâncime. Poate din construcția submarin va trebui să meargă la o unitate de suprafață.
  • Test, test, test de