Тема: На пути к инженерной дружбе FBD и CFD
Когда выяснилось, что для использования интерфейса по ГОСТ 18977-79 скорости диаграммы КАННИ не хватает, то наметилось решение, в котором Канни формирует слова для передачи, а некий более шустрый контролер передаёт эти слова в линию связи и соответственно наоборот. Всё остальное можно завязывать через КАНбас и всякие УАРТЫ с I2C.
Вопрос о том нужен ли интерфейс по ГОСТ 18977-79 (он же ARINC 429) во всяких поделках, я полагаю, что нужен, во всяком случае полезен. В том числе с профессиональной точки зрения. Если КАНбас или ЛИН известны всем злоумышленникам, то за сорок лет эксплуатации в авиации у интерфейсов по ГОСТ 18977-79 отказов не было.. Вот иметь в доме некоторые элементы которые ничем не прошибёшь полезно. Да и в автомобилях тоже не вредно... Где стоит аппаратура по ГОСТ 18977, там врагу остаётся применять только динамит... Ну ещё годятся стаи чаек.
Подход инженерный. Сам придумываю, сам пишу. Для Канни пишу на CFD, а для шустрых контроллеров на FBD под FLprog ом. Сам всё соединяю на клеммах. Винтовых или пружинных. Никаких штырьковых соединений.. Даже на стенде. И никаких паек. И никаких профессиональных программистов.
Ничего кроме FLPROGа за нулевые деньги я не нашёл. За прочие надо платить немалые деньги или иметь ограниченные возможности. И количество всяких шустрых контроллеров, на которых можно писать на FBD под FLPROGом вселяет надежды на успех.
Первая задача состояла в том, чтобы подружить FBD для УНО Р3 и CFD КАННИ 5 НАНО ( их у меня пока две штуки). Простая связь через УАРТ. Связь получается, но приходится разбираться в технике кодировок УНО Р3. Хорошо себя ведёт integer, который по сути соответствует двухбайтовоой структуре данных КАННИ. Посылаю произвольное число в УАРТ на КАННИ и уже КАННИ посылает полученное число на терминал.. Программы простейшие. Надо отметить, что среда FLprog на УНО Р3 посылает в УАРТ ASCII коды вполне самостоятельно и не говорит, что использует перекодировку. У них так заведено.. Этот факт надо учитывать. Как всегда самая универсальная кодировка это HEX. Но к ней надо привыкнуть. Но то что на вход КАННИ уже идут ASCII коды передаваемого числа избавляет от довольно муторной перекодировки данных в КАННИ. Получается простая пересылка из приёмных регистров в выходные регистры через D триггеры.
Если программная дружба FBD и CFD вполне просматривается, то при стыковке разных изделий по УАРТ надо иметь в виду, что сначала следует загрузить диаграммы, скетчи, а потом уже производить соединение проводов УАРТ (TX/RX). Загрузчики программ для контроллеров ругаются, если контроллеры во время загрузки соединены между собой по УАРТ. На КАННИ лампочка горит, даже если выключить питание.
Предполагаю продолжить укрепление дружбы FBD и CFD. Одна из задач использовать для сбора данных об атмосферном давлении возможности FBD на FLPROGе. Датчики давления используют шину I2C и всякие сложные вычисления с плавающей арифметикой. На КАННИ такую арифметику не поднять. Вот и будет, скажем, УНО Р3 работать как спецпроцессор для сбора и обработки информации и подавать её в климатический центр, который делается на КАННИ 5 НАНО. Аналогично выглядит решение задач по работе с модулем реального времени.