Подключить к одному GPS модулю два контроллера?

yurakdr
Offline
Зарегистрирован: 29.04.2020

Вопрос, возможно, дурацкий, но не бейте палкой)

Можно ли подключить к одному gps модулю, например такому SKM53 GPS два разных контроллера: контроллер полета дрона и распберри pi zero?

Задача такая: есть дрон, не очень годный к съемке ортофото - не пишет координаты и высоту в exif фоток. Но летает нормально. Хочу сделать маленький легкий модуль из pi zero и модуля камеры. Модуль будет закреплен на брюхе квадрика, будет управляться через вафлю и делать правильные фотки в нужный момент. Для этого ему тоже нужен GPS модуль, в идеале с компасом, но это лишний вес и потребитель питания. Можно как-то прикрутиться к gps модулю дрона?

Я работал с CAN шиной и там на шину можно вешать много устройств, есть согласование и несколько устройств могут слушать несколько датчиков - по шине передаются nmea данные, на концах ставятся терминаторы. Здесь это не так? К тому же мне нужно только слушать GPS, а не управлять им. GND у всех устройств будет общий, питание от батареи дрона. Можно ли бросить проводок с TX GPS модуля на GPIO малины? будет ли там чего?

rkit
Offline
Зарегистрирован: 23.11.2016

Да, именно так. Только нужно еще настроить gpio чтобы работало нормально, и соблюсти схемотехнику, и  малина всё равно сожрет немало электричества.

yurakdr
Offline
Зарегистрирован: 29.04.2020

Можно подробнее про схемотехнику. Я тут подумал и мне пришла в голову идея решить это еще проще, намного. Если прикрутить так же к выходу tx gps модуля квадрика openlog. Он же будет писать координаты на карту. Фото с дрона имеют название в виде даты/времни. И уже на ПК написать скрипт по сопоставлению фоток и координат по времени.

Вопрос: нужно просто подключить и все? Нужен ли диод где-то в этой схеме? Openlog надо настраивать как-то? Могут ли быть ошибки в шине из-за параллельного подключения и чем они могут грозить контроллеру полета? 

RxMaxx
Offline
Зарегистрирован: 10.04.2020

Попробуйте простой делитель на 74HC04, типа такого: 

yurakdr
Offline
Зарегистрирован: 29.04.2020

Спасибо! а можно сделать на такой "SN74LVC2G04DBVR, Двойной инвертер [SOT-23-6], https://www.chipdip.ru/product/sn74lvc2g04dbvr-2" не паралеля по 2 элемента (эта логика есть в наличии, просто)? или не подойдет?

RxMaxx
Offline
Зарегистрирован: 10.04.2020

Параллелить вообще не обязательно, просто 74HC04 содержит на борту 6 НЕ элементов, из которых нужно всего 3, "лишние" элементы часто пускают в параллель, чтоб зря не пропадали, хотя если не требуется большой ток на выходе (а он тут явно не требуется), то можно только 3 НЕ элемента и задействовать. Конденсаторы на выходе/выходе тоже опциональны, без них тоже должно работать. 

Подойдет любая логика со схожими параметрами.

yurakdr
Offline
Зарегистрирован: 29.04.2020

Еще такой вопрос? нужно ли подтягивать вход RX на openlog-e резистором 100кОм к плюсу?

yurakdr
Offline
Зарегистрирован: 29.04.2020

Добрый день всем! Добрался, наконец, до этой задачи и используя делитель на (не) логике (только без конденсаторов, микросхему запитал после RAW стабилизатора OpenLoga 3.3в, минус общий) удалось подключить к GPS модулю одновременно и родную плату коптера и openlog для регистрации данных. Но вот на следующем этапе никак не удается подобрать Baud Rate. Т.е. openlog пишет на карту, но всякую нечитаемую ерунду. Попробовал перебирать 2400, 4800, 9600, 19200, 38400, 57600, 115200.

Только на 9600 он пишет так-как надо первых 4-5 строк (причем по-разному, то 4, то 5, то 3 только успевает, иногда на полстроки), а потом, как мне кажется, основной контроллер загружается и меняет GPS модулю Baud Rate

$GNTXT,01,01,02,u-blox AG - www.u-blox.com*4E
$GNTXT,01,01,02,HW UBX-M8130 00080000*61
$GNTXT,01,01,02,ROM CORE 3.01 (107888)*2B
$GNTXT,01,01,02,FWVER=SPG 3.01*46
$GNTXT,01,01,02,PROTVER=18.00*11
$GNTXT,01,01,02,GPS;GLO;BDS*06
$GNTXT,01,01,02,QZSЂВ   Њ ±   яVЊ 1    !ћ0  ЉЂ1ЉЬ    Ђ%1 †ю€FЬ$  ЂЂЖё Т€NЁ	і( €†L„ 
qЂI  H я!Љ I ’ !Р	  ђ яЖЋ...

gps модуль такой: http://www.gps-eppinno.com/EPP34.html

Коптер с этим делителем работает и летает, т.е. получает через делитель данные GPS в нормальном виде.

Коптер называется SG906pro и он не пишет геотэг к фоткам, вот задача такая выудить координаты openlogo-ом и сторонней программкой прописать их в EXIF фоток...

есть идеи как подобрать Baud Rate или проблема может быть в чем-то еще? 

конфиг опенлога:

9600,26,3,0,1,1,0
baud,escape,esc#,mode,verb,echo,ignoreRX

 

andycat
andycat аватар
Offline
Зарегистрирован: 07.09.2017

yurakdr пишет:

 кажется, основной контроллер загружается и меняет GPS модулю Baud Rate

 

скорое идет переполнение памяти

 

yurakdr
Offline
Зарегистрирован: 29.04.2020

У опенлога? что ч этим можно сделать?

Zed15
Offline
Зарегистрирован: 04.11.2017

Если актуально смените напряжение на gps на 2.7 вольта и будут нормальные данные

b707
Offline
Зарегистрирован: 26.05.2017

Zed15 пишет:
смените напряжение на gps на 2.7 вольта и будут нормальные данные

какая связь?

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

b707 пишет:

Zed15 пишет:
смените напряжение на gps на 2.7 вольта и будут нормальные данные

какая связь?

тем более, что модуль 5-ти вольтовый )))