OSD на ATmega1281

ubd

Вот этот нормальный, под любой виндой работает:
www.masterkit.ru/main/set.php?code_id=221247

А вот на PL2303, как раз кривой. Под W7 я вообще его завести не смог, вроди бы скачал дрова на 7-ку, но нифига.
А под ХР работает но я там скорость 38400 выставил вручную.

Иван
msv:

Иван, а почему решили что ваши адаптеры не работают на 56000?

в настройках порта такая скорость не доступна:(

прошился на 16МГц кроме потока данных в режиме чтения в проге test_imu.exe ничего не шевелиться… вот… может прога не совсем та? 😃 если бы не работал адаптер то данных я бы не получил наверное?

msv

В настройках такой скорости в выпадающем списке обычно нет, но test_imu ее по идее сам должен устанавливать при открытии порта.
Данные должны приходить такого вида:
AB > AF 50 0B 05 03 00 FF FF 02 00 00 30 00 02 00 3D
AC > AF 50 0B 05 03 00 FF FF 02 00 00 30 00 00 00 3F
AD > AF 50 0B 05 03 00 FF FF 02 00 00 2F 00 00 00 20
AE > AF 50 0B 05 03 00 FF FF 02 00 00 2E 00 00 00 21
AF > AF 50 0B 05 03 00 FF FF 02 00 00 2D 00 01 00 23
Каждое сообщение начинается с последовательности AF 50, это синхронизация, 0B длина телеграммы, 05- тип, заканчивается 1 байтом crc.
Если этого не видно, какая-то проблема с uart… Может я действительно уже запутался с версиями, кварцами, скоростями…
На всякий, вот мой test_imu под 56000.

Иван

данные именно такие , просто оно не кажет настроечных данных почему то:( может не там клацаю:))

разобрался - я не там клацал!!! после включения режима чтения, нужно включить дебаг, тогда “кирпич оживает” ща буду допинывать:)
Кстати, сергей, сенсор в прошиве я “повернул” всё нормально и адекватно в ОСД кажет, СПАСИБО

Иван

Сергей, а ещё просьба - можете показать компановку Вашего вжика?

ubd

разобрался - я не там клацал!!! после включения режима чтения, нужно включить дебаг, тогда “кирпич оживает” ща буду допинывать

У меня без всяких дебагов он оживал.

msv
Иван:

после включения режима чтения, нужно включить дебаг

Не-не… При включения дебаг, IMU начинает передавать в комп сырые данные с датчиков, которые обрабатываются в самом компе… “Кирпич” должен крутится и без этой галки (с иму передаются уже просчитанные данные)… Посмотрите в main():


    if(gHostDbg & 1)
      send_UART(UART_SENSOR_DATA, (u_char *)&gSensorData, sizeof(SENSOR_DATA), 0);
    else
      send_UART(UART_IMU_DATA, (u_char *)&gIMU_Data, sizeof(IMU_DATA),0);
Иван

Видимо версия конфигуратора для иму у меня оч старая… Скачал то что выложил ubd настроил иму на 38400 и кирпич “заработал” данные калибровочные считываются:)

msv:

На всякий, вот мой test_imu под 56000.

выдаёт not found 😦 при попытке скачать…

msv

Наверное пытаетесь скачать .exe (Сервис гугл-диск показывает содержание архива)… Надо через верхнее меню Файл-Скачать грузить .rar.

Иван
msv:

Наверное пытаетесь скачать .exe (Сервис гугл-диск показывает содержание архива)… Надо через верхнее меню Файл-Скачать грузить .rar.

Всё завелось!!! круть!!! Сергей, а если в Вашей ЛРСке на передающем модуле вместо 22й поставить RFM23BP по идее усилок ненужен тогда будет?

msv
Иван:

можете показать компановку Вашего вжика?

Вжик маленько модифицирован- добавлен жесткий центроплан шириной 80мм из линеек. В нем расположена вся почти начинка. ТВ передатчик в одной консоле, приемник РУ и GPS в другой. Сделана крутка крыла, что позволило уменьшить ширину элевонов вдвое без потери устойчивости по тангажу. Взлетный вес с 3S 2200mah 750г. Этого акка хватало для покрытия расстояние больше 20км (всего, не в одну сторону, конечно…).
Последний месяц летаю на самодельном планерке, с размахом 1800мм. Взлетный вес ~1200г, очень низкая нагрузка на крыло. После вжика, честно говоря, скучновато… 😃 Но создавался он как носитель какой-нибудь более-менее приличной “мыльницы”, и в этом качестве еще не испытан.
А раздербаненый вжик сиротливо пылится на антресолях…

Иван:

RFM23BP

Надо бы уточнить,что там тот же чип, что и в RFM22 (скорее всего так и есть). Конечно 1Ватт вполне достойная мощность для LRS (больше я и не включал, обычно летаю на 100мВт, максимум 500мВт). Конечно надо маленько изменить код.
Кстати, изначально я хотел применить именно этот модуль в передатчике, но их не было в наличии и где-то проскочила инфа, что они вообще сняты с производства…

Иван

буду 23ВР заказывать - посмотрим что это за зверь:))

Dacor

Взываю к помощи коллективный разум.

Собрал эту систему. ОСД, ГПС, ИМУ работает. Нет PWM на выходе Меги. На вход подавался РРМ сигнал с двух разных приемников.

Первый от ФрСкай четырех канальный под Футабу ФАССТ. На выходе 8-ми канальный РРМ со следующими параметрами: период импульсной телеграммы 22мс, длительность канальных импульсов 0.8-1.6мс, длительность межканальных пауз 0.4мс, импульсы отрицательные, уровень 1.6В.
Второй приемник Тини от Эксперта, на выходе 10-ти канальный РРМ со следующими параметрами: период импульсной телеграммы 19мс (при чем этот период начинает меняться в зависимости от длительности канальных импульсов - простыми словами, если двигать ручками, то положение первого импульса в следующей посылке начинает меняться, сдвигается первый импульс), длительность канальных импульсов 0.9-1.7мс, длительность межканальных пауз 0.24мс, импульсы положительные, уровень 1.9В.

Вопрос, какой сигнал РРМ понимает автопилот? Что является для него стандартом?

Просьба к создателю АП: можно ли как то поменять прошивку, чтобы АП жевал и эти типы РРМ?

Спасибо.

P.S. Планировал использовать этот АП с приемником Tiny от Эксперта.

ubd

Вот у вас и не запускается потому что сервоимпульс не доходит до 1мс это -100% и не доходит до 2 мс это в +100%. Расширьте расходами, что бы было от 1 до 2 мс.
У меня была та же проблема, я просто расходами добавил и всё.

И дело тут не в эксперте. Он передаёт ровно то что вы ему на вход подсунули, т.е. то что выдаёт ваш передатчик.

Межканальные паузы у вас нормальные. Инверсия РРМ, может быть любая.

период импульсной телеграммы 19мс (при чем этот период начинает меняться в зависимости от длительности канальных импульсов - простыми словами, если двигать ручками, то положение первого импульса в следующей посылке начинает меняться, сдвигается первый импульс)

Это то же не влияет.

Вот если бы КП сделать такой параметр. Например указывать, хотя бы только для канала управления, длительность канального импульса. Что бы канал управления начал хавать тот импульс который приходит на канал управления. Или фициру коррекции сделать.

А лучше сделать вообще, установка длительности канального импульса. т.е. замеряешь осциллом какая длительность приходит любого из каналов, и вбиваешь ему что -100 это соответвует скажем 0,9мс, а +100 1,9 мс. И всё АП начинает хавать этот РРМ, и на выходе выдавать то же самое на сервы.

Dacor

Немножко дополню.

По осциллографу выставил длительность канальных импульсов каналов 3 и 5 (в конфигураторе 3 канал - газ, 5 канал - управление АП). Использую пока 8-ми канальный РРМ (проще всю аппаратуру включать). При неподключенном РРМ ОСД выдает невращающуюся палочку в белом кружкЕ и цифру 128. При включении с подключенным РРМ палочка начинает вращаться и число со 128 уменьшается и становиться 0. Палка продолжает вращаться в белом кружкЕ, на выходе PWM отсутствует. Режим АП остается FS.

Куда копать дальше?

Спасибо.

msv

Прямо квест какой-то у меня получился… 😃

Dacor:

При включении с подключенным РРМ палочка начинает вращаться и число со 128 уменьшается и становиться 0.

Отлично, пакеты PPM АП устраивают. Вы успешно дошли до кода:

    if(!gCTRL_starting)
      {
      if(err==0 &&
         gCTRL_InBuff[gCTRL.Ch_AP_control] < -((CTRL100*80)/100) &&
         gCTRL_InBuff[] < -((CTRL100*95)/100))
            { gCTRL_starting=1; gCTRL_ready=1; }
       }

gCTRL_starting - флаг старта приема PPM
err - количество дропов ( у вас уже ноль)
gCTRL_InBuff - буфер с нормализированными значениями каналов.
CTRL100 - определение, соответствует 100% (0.5мс) отклонению от условного 0 (1.5мс).

ЗЫ А, еще отключите пока в конфигураторе определение FS по газу ниже нормы и восьмому каналу больше половины.

ЗЫЫ

ubd:

А лучше сделать вообще, установка длительности канального импульса. т.е. замеряешь осциллом какая длительность приходит любого из каналов, и вбиваешь ему что -100 это соответвует скажем 0,9мс, а +100 1,9 мс. И всё АП начинает хавать этот РРМ, и на выходе выдавать то же самое на сервы.

Довольно долго у меня вообще была полноценная калибровка всех каналов (по макс, мин, середине) прямо на OSD. Но там есть свои сложности ( например, как-то надо учитывать триммера) и выкинул, посчитав ненужным наворотом…

Dacor
msv:

Прямо квест какой-то у меня получился…

😁 Это я еще не смотрел, что ОСД покажет с приемником от Эксперта!

Панкратов_Сергей

Сергей, а реверс на газ включил?
У Футабы не как у людей.😃
Минимуму газа соответствует максимум длительности.

Dacor

Да я по осцилографу смотрел - ручка газа получается в верхнем положении. В Футабе (по крайней мере в 12ФГ) и каналы не на своих местах по умолчанию - приходиться переставлять на првычные вручную.

Ща пойду еще поколдую.

Подключил приемник от Эксперта (предварительно выставив 10-ти канальный РРМ) - даже палка не крутится…

msv:

А, еще отключите пока в конфигураторе определение FS по газу ниже нормы и восьмому каналу больше половины.

Откючено (ноль стоИт)

Как бы приемник ФрСкай меня мало волнует - летаь то буду на Эксперте.
Сергей (MSV) можно Вас попросить исправить код под РРМ Эксперта (достоверны параметры могу у него попросить и Вам передам). Или скажите какой РРМ нужен АП, я попробую Дмитрия (Эксперт) уговорить подправить его код.

Спасибо.

ubd

По осциллографу выставил длительность канальных импульсов каналов 3 и 5 (в конфигураторе 3 канал - газ, 5 канал - управление АП). Использую пока 8-ми канальный РРМ (проще всю аппаратуру включать). При неподключенном РРМ ОСД выдает невращающуюся палочку в белом кружкЕ и цифру 128. При включении с подключенным РРМ палочка начинает вращаться и число со 128 уменьшается и становиться 0. Палка продолжает вращаться в белом кружкЕ, на выходе PWM отсутствует. Режим АП остается FS.

А вы осцилом смотрели на выходе приёмника?
В контрольной панели указан 5 канал для управления?

Канальный импульс считается вместе с суммой межканальной паузы. т.е. если межканальная пауза 0,4 мс (лог 1), то импульс (лог 0) канала должен быть 0,6 мс, Вместе они дадут 1 мс. У вас так?

Я меня было то же самое. RSSI 100%, 0 потерянных пакетов, но палка крутиться в белом кружке. Оказалось канал газа был не 1 мс, и канал управления не и 1 мс. Когда всё поправил, всё пошло.