Создание собственной системы стабилизации

Sir_Alex

От жеж спамеры…

По поводу CAN, я видел у дидронсов, обсуждение по этому поводу и там проскакивала рекомендация использовать процессоры LPC11C00 серии, в частности есть LPC11C22 или C24 (32 kB (LPC11Cx4) or 16 kB (LPC11Cx2)) - Ценник в районе 3$ и на борту уже имеет трансивер CAN - что нам и надо 😃

Наверное с этого проца я и начну изучение CAN и буду на нем делать ту приблуду что описывал выше.

SergDoc

On-chip, high-speed CAN transceiver (parts LPC11C22/C24 only)

Sir_Alex
SergDoc:

On-chip, high-speed CAN transceiver (parts LPC11C22/C24 only)

Что ты хотел сказать этой фразой? )))

Я ж выше написал что трансивер CAN уже вмонирован в чип, на выходе тока два резюка надо поставить на шину.

Gapey

ну использование 24 при наличии наборту 25 смысла не имеет …
почасти платки CAN маршрутизатора , используйте драйвера в легкодоставаемых корпусах , ненада мельчить … и ненада в проц его совать , вслучае выгорания проще поменять драйвер чем проц … + лучше не пользовать процы разных производителей …
если делать LED_Sequencer никаких 2003 , есть мелкие полевики например irfml8244 (25v 5A) их и использовать … ну или ws2812 хотя оно дороговато выходит и нужно учитывать количество диодов в ленте а оно у каждого своё …
почасти индикации можно использовать мелкий OLED экранчик , можно также поставить 4-5 кнопок для настройки …
заодно можно на этой же плате и на этом-же проце организовать OSD …
ЖПС делать как у omegaprime , только модуль подобрать с возможностью работать по I2C , чтобы не тянуть лишние провода …
ЖПС ставить на длинных пластиковых стойках , чтоб было видно индикацию на маршрутизаторе …

SergDoc

Только C22 и C24 шина у него одна… ну если подойти к вопросу то да дешевле чем stm с драйверами…

Gapey:

с возможностью работать по I2C , чтобы не тянуть лишние провода …

и понеслась душа в рай, а ноги в милицию 😃 а модуль с can на борту - и проводов меньше 😃
Я пока марафетом займусь и модемы кому-то должен 😃

Gapey
SergDoc:

и понеслась душа в рай, а ноги в милицию

ну если компас будет на той-же плате что и ЖПС , а к компасу один фиг тянуть I2C , то почему не предусмотреть возможность работать и с ЖПС по I2C ??? если тянуть can то нужно ставить еще и проц , который будет шуметь …

SergDoc
Gapey:

а к компасу один фиг тянуть I2C

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

Sir_Alex
Gapey:

если тянуть can то нужно ставить еще и проц , который будет шуметь …

Думаешь проц сильно помешает GPS’у?

Сергей, а про какой маршрутизатор идет речь?

SergDoc
Sir_Alex:

Сергей, а про какой маршрутизатор идет речь?

ну я как-то представлял мухи отдельно, котлеты отдельно разделить ESC и остальные устройства - раз, сделать платку-разветвитель дабы втыкать всё - два…

Gapey
Sir_Alex:

Думаешь проц сильно помешает GPS’у?

GPS’у нет , а вот его антенне ДА …

SergDoc

вывод - убирать антенну нафиг от модуля 😃
кстати у меня кабель 50 Ом валяется как раз от GPS антенны… надо только антенну сделать (купить)

tusik

Назрел еще вопросик. Логи полностью пишутся? У меня все логи по 1кб и такое ощущение, что пишутся только заголовки. Хотя включены иму, гпс и тд

SergDoc
tusik:

Назрел еще вопросик. Логи полностью пишутся? У меня все логи по 1кб и такое ощущение, что пишутся только заголовки. Хотя включены иму, гпс и тд

писались все - я смотрел… с sd-шки сразу планнером посмотреть…

tusik
SergDoc:

сразу планнером посмотреть…

То есть скачивать как с АПМ не нужно?

SergDoc

можно и не скачивать если картридер есть 😃 лежат /APM/Logs

tusik

Вечером гляну. А есть ограничение на количество включенных пунктов?

SergDoc

Я все смотрел…

А Андрей-то у нас первоиспытатель 😉)))

djdron
SergDoc:

On-chip, high-speed CAN transceiver (parts LPC11C22/C24 only)

там еще есть API функции для работы с каном)))

SergDoc
tusik:

Логи полностью пишутся?

Действительно посмотрел - логи не пишутся - странно… Раньше писались:
Пару вопросов - перед полётом подключался к USB - если да то логи могут и не писаться если старт был с USB (по моему так было - логи писались только если запуск был без USB ) и второе - если запуск без USB - что делает бутлоадер? если моргает так же как и с USB значит гдето косяк - надо проверять плату (возможно где-то “сопля” висит), если же без USB сразу стартует APM без проморгивания бутлоадера - это нормально…
если сегодня позволят (мои из деревни приезжают) залью прошивку - проверю пишутся или нет…

Вот так выглядели логи

logs.rar

SergDoc

Пока на работе - немного подправил порты, привёл в соответствие ПО PX4 и платы F4BY:

//board_config.h
#define GPIO_GPIO0_INPUT (GPIO_INPUT|GPIO_PULLUP|GPIO_PORTE|GPIO_PIN7)
#define GPIO_GPIO1_INPUT (GPIO_INPUT|GPIO_PULLUP|GPIO_PORTE|GPIO_PIN8)
#define GPIO_GPIO2_INPUT (GPIO_INPUT|GPIO_PULLUP|GPIO_PORTD|GPIO_PIN3)
#define GPIO_GPIO3_INPUT (GPIO_INPUT|GPIO_PULLUP|GPIO_PORTD|GPIO_PIN4)
#define GPIO_GPIO4_INPUT (GPIO_INPUT|GPIO_PULLUP|GPIO_PORTD|GPIO_PIN5)
#define GPIO_GPIO5_INPUT (GPIO_INPUT|GPIO_PULLUP|GPIO_PORTD|GPIO_PIN6)
#define GPIO_GPIO6_INPUT (GPIO_INPUT|GPIO_PULLUP|GPIO_PORTD|GPIO_PIN1)
#define GPIO_GPIO7_INPUT (GPIO_INPUT|GPIO_PULLUP|GPIO_PORTB|GPIO_PIN2)
#define GPIO_GPIO0_OUTPUT (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_CLEAR|GPIO_PORTE|GPIO_PIN7)
#define GPIO_GPIO1_OUTPUT (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_CLEAR|GPIO_PORTE|GPIO_PIN8)
#define GPIO_GPIO2_OUTPUT (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_CLEAR|GPIO_PORTD|GPIO_PIN3)
#define GPIO_GPIO3_OUTPUT (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_CLEAR|GPIO_PORTD|GPIO_PIN4)
#define GPIO_GPIO4_OUTPUT (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_CLEAR|GPIO_PORTD|GPIO_PIN5)
#define GPIO_GPIO5_OUTPUT (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_CLEAR|GPIO_PORTD|GPIO_PIN6)
#define GPIO_GPIO6_OUTPUT (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_CLEAR|GPIO_PORTD|GPIO_PIN1)
#define GPIO_GPIO7_OUTPUT (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_CLEAR|GPIO_PORTD|GPIO_PIN0)
#define GPIO_GPIO_DIR (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_CLEAR|GPIO_PORTD|GPIO_PIN11)


#if defined(CONFIG_ARCH_BOARD_PX4FMU_V1)
{GPIO_GPIO0_INPUT, GPIO_GPIO0_OUTPUT, 0},
{GPIO_GPIO1_INPUT, GPIO_GPIO1_OUTPUT, 0},
{GPIO_GPIO2_INPUT, GPIO_GPIO2_OUTPUT, GPIO_USART2_CTS_2},
{GPIO_GPIO3_INPUT, GPIO_GPIO3_OUTPUT, GPIO_USART2_RTS_2},
{GPIO_GPIO4_INPUT, GPIO_GPIO4_OUTPUT, GPIO_USART2_TX_2},
{GPIO_GPIO5_INPUT, GPIO_GPIO5_OUTPUT, GPIO_USART2_RX_2},
{GPIO_GPIO6_INPUT, GPIO_GPIO6_OUTPUT, GPIO_CAN1_TX_3},
{GPIO_GPIO7_INPUT, GPIO_GPIO7_OUTPUT, GPIO_CAN1_RX_3},
#endif
omegapraim

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