DIY: Робот-подводная лодка для исследования акватории Москвы-реки. Часть 1

    Это краткая история создания подводного автономного робота менеджером очень среднего звена. Текущей целью является создание актуальной карты фарватера Москвы-реки. При поиске нет проблем найти такую карту, но вызывает вопрос ее актуальность. Русло реки постоянно меняется. Происходит эрозия берегов реки и меняется карта фарватера. Эти процессы особенно заметны, учитывая питание Москвы-реки снеговое (61 %), грунтовое (27 %) и дождевое (12 %). Конечной целью является создание многофункционального подводного робота для исследование морских глубин. Мировой океан, покрывающий 2/3 поверхности Земли, изучен всего на 5%. Для создания автономного робота нужен простой «автопилот».

    Как сделать доступный и простой автопилот для DIY-проектов и проплыть на нем по Москве-реке?





    Москва-река это главная водная артерия города Москвы, длина в пределах города 80 км. Ширина реки внутри города меняется от 120 до 200 м, от самой узкой части возле Кремля до самой широкой вблизи Лужников. Принято считать, что скорость течения реки 0,5 м/с. Вполне благоприятные условия для испытания робота.
    Возможно, было бы эффективнее и проще сделать лодку, но задача сделать подводного робота кажется много интереснее.

    Конструкция


    Робот-подводная лодка для исследования акватории Москвы-реки.

    Примерное расположение элементов я видел таким.


    Установка коллекторного двигателя


    Серво-привод управления рулем


    Серво-привод управления рулем глубины


    В шутку можно сказать что я готовлюсь к конкурсу X-Prize.
    Осталось накопить 2000$. :)

    The registration deadline is 30 June, 2016 (11:59 PM UTC/4:59 PM PST). The registration fee is $2,000.00 USD.



    Целью является разработка автономного подводного робота, а не ROV'а. (Remotely operated underwater vehicle).

    Электронная часть не отличается сложностью и качеством сборки
    Arduino nano + L293D + Bluetooth + 3 серво + Power bank (Отдельное спасибо интернет-магазину, который продавал такие по 3 цента). Отдельно подключается к Power bank смартфон Samsung Galaxy S3 для поддержания заряда. Связь смартфона с Arduino осуществляется по Bluetooth.


    Программная часть управления


    «Мы встречаем свою судьбу на пути, который избрали, чтобы уйти от нее»
    Жан де Лафонтен


    Я всегда старался избегать программирования на Android. Когда появлялась возможность разработки даже легкого приложения с возможностью в действии познакомится с Android, я пасовал.
    Но час настал! Действительно, хватит тратить деньги на шильды для Arduino. Все что нужно уже есть в отслуживших смартфонах. Под рукой оказался Samsung Galaxy S3 и немного магии.
    Как порядочный ГИК я задал вопрос на тостере. Возможно я спрашивал сложно. Возможно плохо сформулировал вопрос. И похоже это было скорее не на вопрос. Но в ответ я получил совсем не то, что ожидал.
    Яндекс мне в бухту! Все запросы «Android GPS», «Программирование Android GPS» и прочее давали ответы, которые решительно не работали на Android Studio.
    Каким же облегчением для меня стала находка SL4A. Оказывается можно прототипировать и программировать на Android, используя Python. Управляют, ведь, даже ракетами.

    SL4A Python


    Если у Вас есть телефон Android, а он у Вас есть. Вы же ГИК, а не любитель приторных фруктов.
    Устанавливаем на выбор программу для распознавания QR-кодов.
    Для использования SL4A необходимо установить на телефон приложение.

    Интерпретатор языка Python находится здесь.

    Или QPython3

    Писать программы на телефоне возможно, но занятием увлекательным это не назовешь.
    Есть выход
    Источник: http://habrahabr.ru/post/134184/
    Перенаправим весь локальный трафик, поступающий на порт 9999 в Android-устройство (примем, что сервер слушает порт 46136):
    $ adb forward tcp:9999 tcp:46136
    Осталось создать переменную окружения и настройка закончена:
    $ AP_PORT=9999
    Осталось добавить файл android.py в папку с библиотеками Python'а, и все, теперь можно писать приложения на компьютере, запускать их, и результат можно буждет видеть сразу на телефоне. Для запуска helloWorld на Android-устройстве теперь достаточно ввести в интерпретаторе Python:
    >>>import android
    >>>droid = android.Android()
    >>>droid.makeToast(«Hello, world!»)

    В первой строчке импортируется библиотека android, затем создается объект droid, с помощью которого используются API Android'a. Крайняя строка выводит сообщение «Hello, World!» на экран устройства.
    Теперь самое время, чтобы познакомиться поближе с API, которое предоставляет SL4A.


    Построение пути. Выбор точек



    Используя Яндекс.карты или Google.maps выбираем точки по центру реки. Это примерный маршрут. Для тестов и наладки использую усеченную версию точек.
    [55.671110, 37.686625],[55.668448, 37.675467],[55.660847, 37.671776],[55.654649, 37.671175]

    Как сделать доступный и простой автопилот для DIY-проектов из andoid телефона и 70 строк кода?




    Код автопилота
    import math,android,time
    coordmas = [[55.671110, 37.686625],[55.668448, 37.675467],[55.660847, 37.671776],[55.654649, 37.671175]]
    droid = android.Android()
    droid.startSensingTimed(1,200)
    droid.startLocating(5000, 30)
    def getgps():
    	locs = droid.getLastKnownLocation()
    	gpspos = locs.result["gps"]
    	return gpspos
    def distazim(llat1,llong1,llat2,llong2):
    	rad=6372795
    	#врадианах
    	lat1=llat1*math.pi/180.
    	lat2=llat2*math.pi/180.
    	long1=llong1*math.pi/180.
    	long2=llong2*math.pi/180.
    	cl1=math.cos(lat1)
    	cl2=math.cos(lat2)
    	sl1=math.sin(lat1)
    	sl2=math.sin(lat2)
    	delta=long2-long1
    	cdelta=math.cos(delta)
    	sdelta=math.sin(delta)
    	y=math.sqrt(math.pow(cl2*sdelta,2)+math.pow(cl1*sl2-sl1*cl2*cdelta,2))
    	x=sl1*sl2+cl1*cl2*cdelta
    	ad=math.atan2(y,x)
    	dist=ad*rad
    	x=(cl1*sl2)-(sl1*cl2*cdelta)
    	y=sdelta*cl2
    	z=math.degrees(math.atan(-y/x))
    	if(x<0):
    		z=z+180.
    	z2=(z+180.)%360.-180.
    	z2=-math.radians(z2)
    	anglerad2=z2-((2*math.pi)*math.floor((z2/(2*math.pi))))
    	angledeg=(anglerad2*180.)/math.pi
    	return [dist,angledeg]
    def servoangle(azdiff):
    	if azdiff>10 or azdiff<-10:
    		deg=azdiff
    		if deg>90:
    			deg=90
    		if deg<-90:
    			deg=-90
    	return deg
    gpspos=getgps()
    oldlat = gpspos["latitude"]
    oldlon = gpspos["longitude"]
    for c in range(len(coordmas)):
    	#получение координат текцщей целевой точки
    	curcoord=coordmas[c]
    	targetlat=curcoord[0]
    	targetlon=curcoord[1]
    	darange=11;
    	while darange>10:
    		gpspos=getgps()
    		curlat = gpspos["latitude"]
    		curlon = gpspos["longitude"]
    		time.sleep(0.5)
    		da=distazim(curlat,curlon,targetlat,targetlon)
    		darange = da[0]
    		dazimut = round(da[1])
    		pol=droid.sensorsReadOrientation()
    		pol2=pol.result
    		turn = round(pol2[0])
    		turn = (-turn) *180/ 3.2
    		azdiff=turn-dazimut
    		deg=servoangle(azdiff)
    	oldlat = curlat
    	oldlon = curlon
    



    Код с комментариями
    import math,android,time
    
    #Массив координат
    coordmas = [[55.671110, 37.686625],[55.668448, 37.675467],[55.660847, 37.671776],[55.654649, 37.671175]]
    
    #Инициализация, запуск GPS, сенсоров
    droid = android.Android()
    droid.startSensingTimed(1,200)
    droid.startLocating(5000, 30)
    
    #Функции
    #GPS
    def getgps():
    	locs = droid.getLastKnownLocation()
    	gpspos = locs.result["gps"]
    	return gpspos
    #Функция определения расстояния и азимута между двумя GPS-точками
    def distazim(llat1,llong1,llat2,llong2):
    	rad=6372795
    	#врадианах
    	lat1=llat1*math.pi/180.
    	lat2=llat2*math.pi/180.
    	long1=llong1*math.pi/180.
    	long2=llong2*math.pi/180.
    
    	#косинусыисинусыширотиразницыдолгот
    	cl1=math.cos(lat1)
    	cl2=math.cos(lat2)
    	sl1=math.sin(lat1)
    	sl2=math.sin(lat2)
    	delta=long2-long1
    	cdelta=math.cos(delta)
    	sdelta=math.sin(delta)
    
    	#вычислениядлиныбольшогокруга
    	y=math.sqrt(math.pow(cl2*sdelta,2)+math.pow(cl1*sl2-sl1*cl2*cdelta,2))
    	x=sl1*sl2+cl1*cl2*cdelta
    	ad=math.atan2(y,x)
    	dist=ad*rad
    
    	#вычислениеначальногоазимута
    	x=(cl1*sl2)-(sl1*cl2*cdelta)
    	y=sdelta*cl2
    	z=math.degrees(math.atan(-y/x))
    
    	if(x<0):
    	z=z+180.
    
    	z2=(z+180.)%360.-180.
    	z2=-math.radians(z2)
    	anglerad2=z2-((2*math.pi)*math.floor((z2/(2*math.pi))))
    	angledeg=(anglerad2*180.)/math.pi
    
    	return [dist,angledeg]
    
    def servoangle(azdiff):
    	if azdiff>10 or azdiff<-10:
    		deg=azdiff
    		if deg>90:
    			deg=90
    		if deg<-90:
    			deg=-90
    	return deg
    
    #принятие текущего положения за старую точку
    gpspos=getgps()
    oldlat = gpspos["latitude"]
    oldlon = gpspos["longitude"]
    
    #Цикл
    for c in range(len(coordmas)):
    	#получение координат текцщей целевой точки
    	curcoord=coordmas[c]
    	targetlat=curcoord[0]
    	targetlon=curcoord[1]
    
    	#выполняем цикл пока расстояние больше 10 метров до след.точки
    	darange=11;
    	while darange>10:
    		#определение координат	
    		gpspos=getgps()
    		curlat = gpspos["latitude"]
    		curlon = gpspos["longitude"]
    		time.sleep(0.5)
    		#сравнение дальности и азимута до след. точки.
    		da=distazim(curlat,curlon,targetlat,targetlon)
    		darange = da[0]
    		dazimut = round(da[1])
    		#определяем угол телефона
    		pol=droid.sensorsReadOrientation()
    		pol2=pol.result
    		turn = round(pol2[0])
    		#[1.57=left, 0=stop, -1.57=right]
    		turn = (-turn) *180/ 3.2
    		#если угол точки отличается от угла телефона на 10 градусов готовим команду на поворот
    		azdiff=turn-dazimut
    		#готовим данные для угла поворота сервы руля
    		deg=servoangle(azdiff)
    		#отправляем по блютус угол поворота серво
    
    	#Меняем координаты старой точки, т.к. ожидается смена координат текущей цели
    	oldlat = curlat
    	oldlon = curlon
    



    Python For Android. Функции, которые я долго искал
    Батарея:
    droid.batteryStartMonitoring() — началo работы с батареей.
    droid.batteryStopMonitoring()
    droid.batteryGetHealth() — возвращает состояние батареи (1-неизвестно, 2-хорошее, 3 — перегрев, 4 — мёртвая, 5 — перегрузка, 6 — неизвестный сбой)
    droid.batteryGetStatus() — возвращает статус батареи (1 — неизвестно, 2 — заряжается, 3 — разряжается, 4 — не заряжается, 5 — максимальный заряд)
    droid.batteryGetTechnology()
    droid.readBatteryData() — данные о батарее.
    droid.batteryGetTemperature()
    droid.batteryGetVoltage()
    droid.batteryGetLevel()

    Bluetooth:
    droid.checkBluetoothState() — проверяет включён ли Bluetooth
    droid.toggleBluetoothState() — включает если в скобках True и выключает, если False
    droid.bluetoothAccept() — принимает соединение
    droid.bluetoothActiveConnections() — проверяет, есть ли подключения
    droid.bluetoothGetConnectedDeviceName()
    droid.bluetoothMakeDiscoverable() — в скобках можно указать промежуток времени в секундах
    droid.bluetoothStop()

    Wi-Fi:
    droid.checkWifiState() — проверяет включён ли Wi-Fi
    droid.toggleWifiState() — включает если в скобках True и выключает, если False
    droid.wifiStartScan()
    droid.wifiGetScanResults()
    droid.wifiGetConnectionInfo()

    Другие настройки:
    droid.checkAirplaneMode() — проверяет включён ли режим «В самолёте»
    droid.checkRingerSilentMode() — проверяет включён ли беззвучный режим
    droid.checkScreenOn() — включён ли экран
    droid.toggleRingerSilentMode() — включает беззвучный режим
    droid.toggleAirplaneMode()
    droid.toggleVibrateMode()

    Получение информации о настройках:
    droid.getMaxMediaVolume()
    droid.getMaxRingerVolume()
    droid.getMediaVolume()
    droid.getRingerVolume()
    droid.getScreenBrightness()
    droid.getScreenTimeout()
    droid.getVibrateMode()

    Установка параметров:
    droid.setMediaVolume()
    droid.setRingerVolume()
    droid.setScreenBrightness()
    droid.setScreenTimeOut()


    В планах:
    • Настройка отправки данных по Bluetooth на arduino.
    • Получение с arduino данных о глубине. Глубину буду измерять ультразвуковым датчиком.
    • Отправка данных о текущем положении и измерений глубины на сервер.
    • Доработка конструкции. Лодка должна быть с нулевой плавучестью, чтобы глубину можно было изменять рулями глубины. Возможно от конструкции подводной лодки придется уйти к надводному аппарату.
    • Тест, тест, тест


    P.S.: Почему я решил написать пост до запуска робота? Я хочу найти единомышленников. Если у Вас есть желание — делайте своего робота. Отличный повод собраться на майских праздниках на аквапробег по Москве-реке на роботах! По всем вопросам можете писать мне ВК. Просьба сделать репост, может быть кто-то из Ваших друзей захочет принять участие в аквамарафоне.

    Напоминаю:
    Конкурс роботов-газонокосилок пройдет в Сколково 3 июня. Все желающие могут попробовать себя в робототехнике. По итогам конкурса мы хотим отобрать команду для стартапа. Мы будем делать первый российский коммерческий робот-мульчатор. Ценные призы и подарки для всех участников.

    Битва робокосилок

    43,16

    Компания

    Поделиться публикацией
    Комментарии 132
      +24
      По реке плывёт труба,
      арудино как bluetooth
      Ну и пусть себе плывёт,
      нам не нужен Windows Phone.

      А так — крутая штука!
        +2
        Больше вопросов возникло
        1) Как передавать данные на сервер? Всплывать периодически?
        2) Хватит ли емкости АКБ на всю подводную прогулку + передачу данных?
        3) Датчик глубины смотрит строго вниз или сканирует некий сектор, строго вниз определяет телефон?
        4) Трава, сети, нитки, водоросли, как с этим быть? Робот в какой то момент может и не всплыть.
          0
          Ответил ниже.
            0
            1) как вариант: передача данных ультразвуком на плывущее по поверхности судно-ретранслятор :)
            2) звук в воде потребует меньше энергозатрат, чем радиоволны
            3) нужен датчик по направлению движения для коррекции глубины перед препятствиями
            4) выброс аварийного буя, продувка балласта :) как вариант — надувание шарика, который вытянет конструкцию аварийно
            +5
            Канализационная труба: теперь с ардуино и блютусом!
              +4
              Я её слепил из того что было.
              Потом можно в умный дом пристроить канализационную трубу по прямому назначению, а arduino для учета калорий, вытекающих в никуда. Будет повод задуматься об эффективности и рекуперации этой энергии. :))
                0
                В определённых кругах такое называют "сантехпанком", но к Вам это не относится. У Вас всё замечательно получилось.
                  0
                  В Ордо Сантехникус панков не держат.
              +3

              Я и не планирую глубокое погружение. Свехру будут три контакта. При погружении постараюсь держать глубину, чтобы нижний контакт со средним были замкнуты, а с верхним разомкнуты.

              Насчет АКБ вопрос сложны, нужно учитывать еще и быструю разрядку в холоде, в общем это вопрос тестирования. Можно сократить маршрут.

              Датчик глубины строго вниз

              Может и не всплыть. Делайте Ваши ставки, господа.
                +4
                Может вместо контактов лучше сделать подобие поплавкового датчика уровня топлива — поплавок на штанге идущий к потенциометру?
                  0
                  Лучше контакты, но графитовые, чтобы не было электролиза от постоянного тока.
                    0
                    У контактов есть проблема — их тупо может замкнуть плавающий в реке мусор (банально какая-нибудь выброшенная газетка) или наоборот загадить контакт. Можно сказать конечно что шарнир поплавка тоже может заклинить, но это проще проверить — показания потенциометра не будут меняться при попытке всплытия.
                    Если не хочется потенциометра, то можно сделать 2 кнопки или геркона, которые будут срабатывать в нужных положениях поплавка.
                  0
                  АКБ можно собрать из Li-Po 18650 так как они менее чувствительны к перепадам температуры.
                    0
                    Может лучше датчик давления?
                    В воде он будет давать довольно точную информацию о глубине, и над водой держать ничего не надо.
                      0
                      Я и не планирую глубокое погружение. Свехру будут три контакта. При погружении постараюсь держать глубину, чтобы нижний контакт со средним были замкнуты, а с верхним разомкнуты.

                      Контакты должны быть довольно длинными, так как высота волны в ветер вполне может быть 40-50 см
                      +1
                      Ещё бы камеру и ИК-подсветку на лоб подлодки — был бы настоящий "Исследователь Глубин"! ;)
                        +1
                        Была задумка использовать камеру телефона и просто включить на нем перископ. Название приложения прямо в точку!
                        Проблем в том, что он не вмещался, я сделал специальный прорез, а сам телефон… как бы по-мягче… обтянул латексным изделием…
                        Но при горизонтальном положении азимут определяется лучше.
                          –1
                          Для ардуинки разве нет камер подходящих? Отдельную камеру установить проще, чем телефонную, да и потребление энергии будет ниже.

                            0
                            Я думаю, что с этой задачей проще справится видеорегистратор, но я решил оставить эту задачу на версию 2.0
                            Для начала аквапробег.
                              +1
                              А будет вариант просто приделать дешевый регистратор в аквабоксе к версии 1.0?
                                0
                                В некоторых ИК-подсветка встроенная есть.
                                +3
                                Для Ардуинки — нет. Сил не хватает даже для ЧБ изображения с нормальным разрешением. Малинка для этого годится значительно лучше, причём не с USB камерой, а своей

                                  –1
                                  Что вы имеете ввиду под "своей"?
                                    0
                                    скорей всего имеется в виду камера для Rpi, которая цепляется через csi интерфейс.
                                      0
                                      Да, именно она. Причём есть вариант без ИК фильтра, если всё-таки делать ИК подсветку
                              +4
                              Сдается мне, что в грязной воде, да еще при учете того, что беспилотник будет плыть не глубоко, у вас камера будет постоянно снимать серое пятно :-)
                                0
                                Именно поэтому отложил идею.
                                0
                                в МР в этом районе с камерой ничего не разглядеть. Тем более с подсветкой в ИК диапазоне. Очень мутная вода. Могу выложить видео как видно объект 7х12 под водой со светочувствительной камеры от систем безопасности на глубине 11 метров в стоячем водоёме зимой (прозрачность выше чем летом) и с подсветкой из 7 ИК светодиодов по 130мВт. На метре видно, но уже больше контурами.
                                  0
                                  Я думаю, что идея увидеть своими глазами что там под водой очень заманчива, но у меня пока цели другие.
                                    0
                                    А почему ИК? ИК же в воде не проходит, в отличие от УФ — что-то милиметры декремент полузатухания против десятков метров даже в идеально чистой воде. Т.е. надо в синюю сторону уходить — и камерой и подсветкой а не в красную
                                      0
                                      Проще всего в видимом диапазоне, конечно. Но у меня была цель не пугать рыбу, поэтому я выбрал ИК диапазон. UV камер доступных нет.
                                        0
                                        Попробуйте заменить ИК светодиоды на просто синие "супер-яркие" — и вода окажется вдруг не столь уж и мутной
                                          0
                                          Действительно? Спасибо за совет. Побежал заказывать. :)
                                  +1
                                  Говорят, что дроиды очень прожорливы при использовании gps.
                                  Вот тут — https://habrahabr.ru/post/275749/ ребята достаточно хорошо исследовали эту проблему.
                                  Не знаю, столкнетесь ли вы с подобной проблемой, но идея очень интересная, поэтому хочется посоветовать проверить все что только можно.
                                  P.S. В предпросмотре линк был, но при отправке его съело...
                                    0
                                    Говорят, говорят, а я им не верю, и Вам того же желаю.
                                    Давайте пробовать, код чуть выше. Можете купить детскую игрушку лодку на ру и пробовать.
                                    +1
                                    Надеюсь учтете, что может накрыть волна и замкнуть сразу все
                                      +1
                                      Я думаю частоты опроса в 1-2 Гц за глаза. А принимать решение после N одинаковых значений
                                        +2
                                        Ванна-тест+ведро наверно будет самым лучшим.
                                        Что-то оч напоминает ПИД регулятор.
                                      +6
                                      На чём построен датчик глубины?
                                      На одних рулях глубины под воду он не уйдёт. Огружать надо дополнительно и достаточно сильно.
                                      Силы мотора не хватит преодолеть течение МР, тем более в мае месяце.
                                      Чем герметезируете места выходов валов?

                                      Я, честно говоря, не понял из описания, как это будет работать. Имею опыт построения подводных камер и в курсе сопутствующих проблем. И по конструкции очень много вопросов.

                                      И, конечно, первые запуски только на верёвке.

                                        0
                                        Кстати, на прошлой неделе в Марьино на дне уверенно держалась кормушка только весом от 130 грамм.
                                        Это я к тому, что очень рекомендую начинать тесты не с рек, а с озёр, карьеров и прудов.
                                        +1
                                        Датчик
                                        http://ru.aliexpress.com/wholesale?catId=202000062&initiative_id=AS_20160225052245&SearchText=waterproof+ultrasonic+distance+measuring+module

                                        Планирую запустить по течению.

                                        Пока это открытые вопрос. Валы от рулей герметиком и пленкой.
                                        Сам двигатель я залил герметиком с внутренней стороны.

                                        Первые тесты обнадежили
                                          0
                                          Эээ. Так они для воздуха и всего до 3.5 метров. Водонепроницаемость самого пьезоизлучателя тут для защиты от брызг.
                                          +1
                                          Верхний слой воды от ветра может двигаться в обратном направлении от основного течения.
                                          Почему бы не нырнуть глубже и там уже спокойно передвигаться, опять же нивелировать качку?
                                          0
                                          Привет единомышленник! Я конечно делаю ROV, но вопросы тут почти одни и те же:
                                          1. Как Вы делаете гидроизоляцию коллекторного двигателя? Я через магнитную муфту, всего у меня 6 двигателей.
                                          2. Какой ультразвуковой датчик собираетесь использовать в качестве глубиномера? И как вообще? Я для этих целей думаю применить тензометрический датчик. Чем больше давление воды, тем глубже.
                                          3. GPS под водой вообще нормально работает?

                                          У меня немного примитивное управление, внутри стоит свич DES1005, IP-камера и ардуина с езернетшилдом, сигнал на верх идет по UTP, по нему же и питание.

                                            0
                                            Вопросы не в бровь, а в глаз. Чувствует, что Вы в теме.

                                            1. Никак, залили полностью весь двигатель. Т.е. отложил проблему.
                                            2. Чуть выше ссылка.
                                            3. Мне и нежно под водой, планирую всплывать каждые N минут.
                                              +1
                                              GPS под водой работать будет примерно никак, посмотрите на буксируемые антенны у ПЛ.
                                                0
                                                Да зачем же под водой?
                                                Она же еще и надводная лодка.
                                              0
                                              GPS под водой вообще никак не работает, как и любые другие доступные самодельщиками виды ЭМ-связи.
                                              В своём проекте ROV запланировал использование буя с WI-FI антенной, соединённое с устройством коаксиалом.
                                              Вес любого кабеля, если управлять устройством с берега не позволит устройству вменяемого размера самостоятельно плыть.
                                              А если сидеть в лодке и опускать устройство вниз, то проще крутить камерой по сторонам, чем двигать всё устройство двигателями.
                                                0
                                                Если я согласую правовые вопросы, Вы будете участвовать в аквамарафоне?
                                                  0
                                                  Спасибо за приглашение, но, наверное нет. Мой прототип по планам будет готов не раньше 12 июня. 7 июля — более реальный срок.
                                                  –1
                                                  Кстати, а какие вообще можно использовать беспроводные каналы свзяи для подводных аппаратов? УЗ?
                                                    0
                                                    низкие частоты, УЗ водой успешно поглощается. но как раз дешевые 48кгц излучатели работать будут
                                                      0
                                                      за модемы вопрос

                                                      если я буду 80 watt подавать — рыба с ума не сойдет?

                                                      http://www.evologics.de/en/products/acoustics/s2cm_series.html
                                                        0
                                                        Не сойдёт. Посмотрите мощности бытовых рыбопоисковых эхолотов. Там пики на порядки больше.
                                                        0
                                                        Вот тут всё подробно про все известные варианты: link

                                                    0
                                                    Идея подлодки с Arduino потрясающая! Однако же, просмотр фоток вызывает диссонанс, как-то не очень похоже это на подлодку, ну вот совсем-совсем.
                                                      0
                                                      Я буду только рад увидеть ваше воплощение этой идеи. Я вижу подводную лодку так.
                                                      0
                                                      А, может быть, перед тем, как решать технические проблемы, стоит проконсультироваться в ФСО и ФСБ — даст ли вам кто исследовать акваторию Москвы-реки? И не приобретёте ли вы проблемы совсем в другой плоскости?
                                                        0
                                                        Я из Подольска, а город у нас портовый...:) Могу и в Пахре испытывать.
                                                          +1
                                                          Я, кстати, тоже. Почти. Может, обсудим за рюмкой чая?
                                                            0
                                                            Porque no? Ссылка на мой профайл вк чуть выше.
                                                              0
                                                              А меня в контакте забанили. Киньте, пожалуйста, мыло в личку.
                                                        0
                                                        Интересный проект!
                                                        А размер рулей рассчитывали, или на авось? Я к тому, что хватит ли горизонтального руля для поворота в данном случае.

                                                        И ещё одна мысль: возможно, стоит "немного" усложнить код? Предусмотреть ситуации, когда ветер/течение сносит судно, несмотря на работу двигателя; близкий разряд батарей — передать текущие координаты/всплыть/отправиться на мель? и т.п. "плохие" сценарии...
                                                          0
                                                          На авось.
                                                          Это первый вариант. Надеюсь с единомышленниками и силой сообщества.
                                                          0
                                                          Можно вспомнить статейку про восстановление каких-то данных, в которых оказался проект по защите акватории МР. А вдруг его реализовали и он эту вашу трубу торпедирует? Или абордажирует?
                                                          На всякий случай при сборке используйте перчатки, чтобы пальчиков не оставлять =)

                                                            0
                                                            Я думал наоборот крупно на ней номер телефона написать как на коптерах.
                                                            +8
                                                            Делал по работе очень похожую штуку. Тело — труба высокого давления, на концах — литые заглушки (по форме, сделанной на 3Дпринтере). Вы упусттили самый главный прикол: двигатель ей не нужен, к тому же в вашей компоновке будут проблемы с управляемостью.
                                                            Достаточно закрепить «рули» параллельно телу намертво, двигатель убрать, и придать всей конструкции ундулирующее движение (по синусу). Я уже запускал, десятки раз — скорость развивается такая, что пешком по берегу фиг догонишь.
                                                            Поделюсь из опыта:
                                                            * Придумайте систему отлипания от дна. Если сядет брюхом в ил, может намертво приклеится. Нужно или запас по силе всплытия, или буй какой-то.
                                                            * Длинноволновый любительский радиомодем с усилителем ловит с глубины аж 15см. Вайфай — 5см. Не заморачивайтесь, ставьте роутер на борт. Есть роутеры 5х5 см.
                                                            * Герметик продавит сразу, независимо от глубины. Из-за охлаждения воздуха внутри машины в ней падает давление, что добавляет разницу. Герметизировать надо от всей русской души. Ну или подогревать воздух внутри машины.
                                                            * По электрическим проводам кроме тока прекрасно бежит вода. Прямо между жилами и оплёткой. Учитывать при попытке вынести что-либо наружу.
                                                            * Какой, к чёрту, телефон? С карасями в Инстаграмм сниматься? BeagleBone + STM32 Discovery (с гироскопами) + голый GPS модуль если нужен. У нас питание — 30 18650х (не ржать — лежали без дела) и их хватало на 40 минут хода.
                                                              0
                                                              Герметик не продавит. Проверено на 3 итерациях устройств на глубинах до 14 метров. Хотя, смотря где его наносить, коненечно. Температурная разница давлений — ничто при 1бар на 1 метр погружения.
                                                                +4
                                                                Закручивал крышку на резьбу с резиновой прокладкой и замазывал стык герметиком. Протекло через 3 часа.
                                                                  +1
                                                                  Так вы заглушки именно печатали на 3D-принтере или форму только печатали? Если саму заглушку, то заполнение какое? Надо 100% заполнение и все равно может протекать, не герметик виноват, а слоеный платик. Я обмазываю все печатаные узлы эпоксидной смолой и все нормально.
                                                                    0
                                                                    На 3Д принтере печатали шаблон, по нему делали форму, по ней лили однородный композит. Не скажу какой — у нас отдельный гуру этой темы есть.
                                                                      0
                                                                      может стоило сначала стандартную заглушку(она 3 атмосферы держит), а уж на нее потом печатать обтекатель?
                                                                0
                                                                Придумайте систему отлипания от дна.
                                                                Если делать плавающий буй и тонкий проводок (опционально сматывающийся на буе) это может решить множество проблем, таких как: сигнал до подлодки, максимальная глубина, возможность вернуть всю конструкцию на берег, просто сплавав за ним, в случае поломки. А собствено что я предлагаю: за этот же провод можно вытянуть подлодку к бую на поверхность.
                                                                  0
                                                                  Подогревать воздух — очень затратно по энергии. Можно делать наддув CO2, Банальная сода+уксус.
                                                                  Кстати, для аварийной продувки тоже подойдет.
                                                                    0
                                                                    Мы обошлись замороченной многослойной гидроизоляцией. Остальное — так, размышления.
                                                                  0
                                                                  придать всей конструкции ундулирующее движение (по синусу)

                                                                  Ещё сделать силиконовые голову, хвост и плавники, покрасить соответствующе — и можно летом повеселиться =)
                                                                  ps: промахнулся, ответ комментарию выше
                                                                  0
                                                                  Интересный проект. Также нужно учитывать что по Москве реке часто ходят судна. Как будете решать данный вопрос? Также все таки нужен какой то аварийный маяк в случае аварии.
                                                                    0
                                                                    Вопрос правильный, буду думать.
                                                                      +1
                                                                      А не планируется с подводной лодки запуск пиротехнических ракетниц? Ну чтоб если запуталась, то могла сигнализировать о своем местонахождении. И чтоб как настоящая субмарина с ЯО.
                                                                        +6
                                                                        Угу. "Вчера, около шести часов вечера, было совершено нападение на сотрудников государственной инспекции рыбоохраны, проводивших контрольный отлов рыбы в верхнем течении Москвы-реки. Неопознанный плавающий объект (замаскированный под отрез сантехнической трубы) запутал сети, повредил точное оборудование и обстрелял работников рыбнадзора миниатюрными ракетами, после чего скрылся в неизвестном направлении. Инспекторам оказана необходимая медицинская помощь, на месте работают следователи МВД и ФСБ, в районе объявлен план-перехват."
                                                                          0
                                                                          а потом появятся слухи про токеретов…
                                                                        0
                                                                        Читал тут где-то про автономные подводные лодки, которые переправляли наркоту. Интересно было как они сами путь находили. Глядя на Ваш проект многие тайны прояснятся)
                                                                          0
                                                                          У них и бюджет покрупнее будет.
                                                                            +2
                                                                            Ссылка на пост. Я всегда думаю о инженерах, которые там работают. Кто это?
                                                                            Есть ли на GT кто-нибудь из Колумбии?
                                                                            0
                                                                            Нужно рассмотреть физическую сторону проекта. А то утонет (или унесёт течением) со всеми классными наработками
                                                                              0
                                                                              По поводу регулирования плавучести была у меня идея:

                                                                              Вывести наружу носик шприца, и набирать/выпускать шаговиком(сервой) балласт. Правда будут проблемы с герметизацией из-за изменения давления в корпусе.
                                                                                0
                                                                                В идеале лучше всего винт/гайка и большой шприц на 100-200 мл.
                                                                                Я пробовал 4 шприца по 20мл(самые большие, которые нашел в аптеке).
                                                                                Серво не справляется, решил идею отложить.
                                                                                  0
                                                                                  плавучесть просто должна быть позитивная с погружением рулями набегающим потоком
                                                                                    0
                                                                                    Я и планирую таким образом погружаться, но опытным путем добиться нулевой плавучести. Чтобы плотность всей лодки была примерно равна плотности воды.
                                                                                      0
                                                                                      плавучесть все же должна быть положительная и тангаж без управления тоже положительный. не сильно, грам 30 хватит. регулируется свинцовыми шариками, часть из которых извлекаемо во внешней емкости.
                                                                                    0
                                                                                    в "больших" батискафах тупо груз снаружи висит на элекромагните. нет питания — балласт сбросился, аппарат всплыл… Впрочем при прилипании к илу это не поможет
                                                                                      +1
                                                                                      Чтобы избежать прилипания к илу груз должен быть длинный и свободно свисатьвниз. Скажем, цепочка грузил на леске, прицепленной к гайке, а она уже удерживается эл.магнитом. Когда конец груза ляжет на дно, плавучесть начнёт возрастать, а скорость погружения снижаться, а при некоторой длине лежащей части груза будет достигнута нулевая плавучесть. Если при этом аппарат ещё не лёг в ил, то его освобождение не будет трудным.
                                                                                  +1
                                                                                  валы герметизируются проще всего магнитными муфтами(вклееная заглушка из капролона или фторопласта — лучше 1мм капролона или стеклокомпозита и 0.1фторопласта с двух сторон, с двух сторон магниты неодимовые, к ним епоксидкой клеятся валы). необходимые магниты сейчас стоят по полдолара

                                                                                  100% герметизацию можно сделать той же епоксидкой со стеклотканью(слой не меньше 1мм), в месте смены батарей — термоклеем из пистолета(слой не меньше 0.5см).

                                                                                  но текущие правила судоходства запрещают подводные аппараты в судоходной акватории. рассмотрите все же вариант с буем. будет куда флажок повесить(на тонкой удочке) и вайфай антену.

                                                                                    0
                                                                                    Хм… а буй можно поместить в водоем без разрешения?
                                                                                      +1
                                                                                      буй нельзя. а сверхмалое надводное судно включая модели(до 100л водоизмещения) — можно. но нельзя плыть по фарватеру, пересекать только под прямым углом и ОБЕСПЕЧИВАТЬ ВИДИМОСТЬ. в данном случае делаете буй в виде лодочки, часть лодочки тянущая под водой — не запрещается. и флажок для обеспечения видимости. в ночное время — нельзя.
                                                                                      правда, есть еще правила на использование вайфай вне помещений.
                                                                                        0
                                                                                        Это вы описали правила для маломерных судов. В реальности лодки на МР даже не заметят модель и разнесут её винтами.
                                                                                    0
                                                                                    [профдеформация]
                                                                                    Без элементарного CTD такой девайс будет неполноценен.
                                                                                    [/профдеформация]
                                                                                      +1
                                                                                      Простите чайника, но для озвученной задачи почему это не плот (или катамаран-тримаран) с установаленными на дне несколькими эхолотами а по бокам ваидеокамерами?

                                                                                      Эхолоты меряют дно (под несколькими углами), видеокамеры снимают берег.
                                                                                        0
                                                                                        Стырят.
                                                                                          0
                                                                                          Да кто невзрачную конструкцию будет тырить-то на середине реки? :)
                                                                                          Мне тоже кажется, что для данной задачи надводное судно наиболее предпочтительный вариант. Я бы рассмотрел вариант дрона с положительной плавучестью и балластной цистерной, в которой предусмотрен механизм с сервоприводом только для уменьшения её объёма, то есть только для затопления дрона. Вытеснение же воды из балластной цистерны (всплытие) должно осуществляться автоматически после отключения сервопривода за счёт, например, наличия пружины в этом самом механизме уменьшения объёма цистерны или за счёт эластичных элементов цистерны (это наверное самый трудный момент будет в этом варианте, но по-моему проще, чем предлагаемый автором способ погружения за счёт действия гидродинамических сил). Должен получиться этакий "нормально-плавающий" дрон. Если есть необходимость (например, по картинке с камер видно, что на дрон несётся какое-либо судно), то по команде активируется сервопривод и дрон уходит под воду. Далее, либо по обратной команде (если это возможно), либо по таймеру (да хоть по истощении батарей) вода из балластной цистерны вытесняется нормальным образом и дрон всплывает. В надводном же положении на дрон можно нацепить что угодно, хоть камеры, хоть солнечные панели, хоть антенны спутниковые :) Такой дрон-плот можно сделать даже без двигателей, свободно сплавляющимся по течению (но всё-таки умеющим "уворачиваться" от неприятностей).
                                                                                            0
                                                                                            Электромагнит, который держит железный балласт. Сброс по истощению батарей. Классика.
                                                                                              0
                                                                                              Ну, на мой взгляд, такой одноразовый механизм скорее подошёл бы для аварийного всплытия. Да и будут проблемы с энергоснабжением такого электромагнита. Я имел в виду несколько другое.
                                                                                                0
                                                                                                Этот механизм — штатный для больших батискафов. В отличие от любых механизмов с движущимися частями, он безотказен. А по истощению батареи должно происходить именно аварийное всплытие.
                                                                                                  0
                                                                                                  Все "велосипеды" уже придуманы до нас :)
                                                                                        0
                                                                                        Для моря питание можно сделать полностью автономным, если хорошо оптимизировать энергопотребление.
                                                                                        Вот тут я даже вопрос задавал: https://toster.ru/q/203389. Очень интересно было бы такое сделать, но пока моря рядом нет...
                                                                                          0
                                                                                          А в каком диапазоне камера будет видеть в нашей мутной речной воде? ИК, УФ?
                                                                                            0
                                                                                            Ни в каком. Лучший спектр пропускания у воды в видимом спектре. Но в "мутной речной воде" свет рассеивается на частицах взвеси. Поэтому видно очень плохо.
                                                                                              0
                                                                                              А что если вспомнить как работают противотуманные фары и тащить за собой на тросе источник света и снимать назад (аля-рыба удильщик наоборот)? Правда из-за риска зацепления надо быть готовым потерять буксируемую подсветку и делать все на разъеме который не-совсем-легко-выдирается.
                                                                                                +1
                                                                                                Подводная подстветка должна, по-хорошему, делаться на вынесенных источниках света, для того чтобы не подсвечивать взвесь прямо перед объективом. Для предлагаемого размера устройства, подсветку достаточно вынести на 20-30 см и направить пучок света в метр впереди камеры. Это уже значительно улучшит качество изображения.
                                                                                                  +1
                                                                                                  Ну я в принципе это и имел ввиду:

                                                                                                  image
                                                                                                  Правда на предложенной схеме уже есть штанга, а не трос и есть плавник (чтобы защитить подсветку и иметь меньший шанс запутаться). Ну и штанга вместе с проводами подсветки выдернется из держателя (пружинный зажим?) как только аппарат за что-то тотально зацепиться.
                                                                                                  Направлено назад чтобы аппарат не "клевал носом" и обеспечить простое удаление штанги при ее зацеплении за счет двигателей ПА.
                                                                                                    0
                                                                                                    Если подсветку сделать автономной — батарейка + светодиод — то даже пусть она будет расходником при сильном запутывании. А если только SMD светодиод (серия, линейка, цепочка, гирлянда) на тоненькой удочке — то плавник не нужен и такое нереально опасно зацепить. Сложный вариант для понтов — удочка световодная с зеркальцем на конце, а светильник (лазер) в комле
                                                                                                    Хорошее годное решение.

                                                                                                      0
                                                                                                      Стержень из оргстекла как световод, smd'шка в ПА?
                                                                                            0
                                                                                            Я думаю это вас заинтересует. А насчёт герметизации движков и всего остального — заливайте plastic 71 и двигатели с контактами в том числе.
                                                                                            0
                                                                                            А от кораблей как увёртываться?
                                                                                              0
                                                                                              Если будет интересно, то у нас в лаборатории (lepa.epfl.ch) реализуется проект по созданию робота-змеи, напичканного разными датчиками для отслеживания экологии и регистрации загрязнений. Проект на 3 лаборатории, в том числе и по mech.eng. nanoterra. Как говорится, велкам;)
                                                                                                0
                                                                                                Если это приглашение — то я уже собираю вещи.
                                                                                                  0
                                                                                                  Наконец-то, добрался до компьюетра нормального: вот ссылка на проект.
                                                                                                  Скажем так, это приглашение для изучения возможностей по внедрению данного робота для полезных целей, а остальное всегда зависит от Вас!;)
                                                                                              0
                                                                                              А у меня вот какой вопрос: а велик ли "оверхед" при использовании SL4A?
                                                                                              Если потребление энергии/скорость работы изменится не более чем в 2 раза по сравнению с java-байт кодом — то открывается много возможностей!
                                                                                              Особенно было бы удобно отлаживать скрипты прямо с компа...
                                                                                                0
                                                                                                Про герметизацию валя винта — можно использовать как сальники автомобильные маслосьемные колпачки грм. Конструкция уплотнителя будет простой — трубка забитая консистеной смазкой (можно сделать сбоку отверстие для заполнения), с обоих сторон колпачки, внутри проходит вал.
                                                                                                  0
                                                                                                  Если на глубине до 1-2 метров этого и хватит, то, думаю, для глубин 10 метров такая герметизация не справится.
                                                                                                  0
                                                                                                  интересный проект. а если ещё камеру заделать и купальшиков снимать?
                                                                                                    0
                                                                                                    У меня давно зреет идея создания плавающей лодки на солнечных бетареях и отправки ее в кругосветку, с отслеживанием он-лайн)
                                                                                                      0
                                                                                                      Как будет загерметизированы двигатели и вообще вся механика? Самая главная проблема подводных лодок именно в этом.
                                                                                                        0
                                                                                                        Что-то мне подсказывает, что эта подлодка не всплывет.

                                                                                                        Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                                                                                        Самое читаемое