Rezinoviy_Ded Опубликовано 29 сентября, 2020 Поделиться Опубликовано 29 сентября, 2020 Чрезвычайно редкая игрушка. В годы выпуска был мало распространён на территории СНГ. Найти такой сегодня очень трудно. Оплётка мягкий кожзам, станина из толстого металла, металлические струбцины с удобными колёсиками и клёвые подрулевые лепестки. Ну и самое главное, собственно из-за чего я его купил - ременной привод! Да, у игрушки, разработанной ещё "до нашей эры" были ремни. Скрытый текст Недостатков два: потенциометр в качестве датчика положения вала, совместимость драйверов только с древними системами (Windows 98, Windows ME). Продали мне его полностью рабочим, но проверять это я всё равно не стал. Заводская логика не нужна. Я сразу её выкрутил и выбросил)) Вместе с потенциометром. Настал черёд создания крепления для оптического энкодера, платы BTS7960 и ардуино с прошивкой EMC Lite. Тут меня ждало разочарование. Ардуино на этой прошивке не работает с драйвером BTS7960. На всякий случай проверил драйвер на плате STM, работает. Ну что ж, это уже вторая попытка подружиться с этой прошивкой, прошлый раз EMC не захотел работать с энкодером от принтера, который работает на этой же плате с прошивкой AI Wave 2016. Кстати BTS7960 так же был проверен на прошивке Ai Wave. В топку, как говорится. А мы переходим к тому что гарантированно работает. К stm32. Убедившись что энкодер не влезает в штатное место потенциометра (даже без кожуха) я решил нарисовать для него станину и микроскопический кардан, который будет вставлен в штатное место потенциометра. Скрытый текст Приложил, примерил, рассчитал расстояние и прикрутил. Всё отлично, как будто так и было. С BTS7960 проделал ту же процедуру. Нарисовал "столешницу" на четырёх ногах и вклеил её на кожух одного из шкивов. Уместился миллиметр в миллиметр, как будто так и было задумано заводом. Скрытый текст Подключил к компу, приступил к тестам. Выяснилась интересная особенность. Если направление вращения энкодера совпадает с направлением вращения баранки в программе, мотор стремится докрутить вал за пределы ограничителя. Т.е. если я проворачиваю руль к границе установленных 540 градусов, логично что руль должен остановиться. Но вместо этого он начинает проворачивать его дальше, до бесконечности. В любую сторону. Я задумался. А что если переставить контакты энкодера А и Б местами? Переставил, запустил тест. Теперь в программе руль вращается противоположно вращению энкодера. Но, внезапно, ограничение работает нормально. Ха! Да нужно просто включить инверсию в настройках утилиты MMOSFFB, раз всё заработало! Включаю инверсию, мотор начинает работать противоположным ожидаемому образом. Ну т.е. снова проворачивает его дальше в "точке границы". Я сделал ещё несколько комбинаций с включением\выключением инверсии и перестановкой контактов А и Б. Результат - мотор нормально ограничивает вращение руля (да и вообще создаёт обратную связь) только с показаниями энкодера, противоположными направлению вращения вала. Решения пока не придумал.Продолжение следует. 1 1 Ссылка на комментарий
Lexins Опубликовано 29 сентября, 2020 Поделиться Опубликовано 29 сентября, 2020 (изменено) @Rezinoviy_Ded поменяй местами контакты: PE9 <--> PE11 и PA0 <--> PA1 Изменено 29 сентября, 2020 пользователем Lexins 1 Ссылка на комментарий
Sieben Опубликовано 29 сентября, 2020 Поделиться Опубликовано 29 сентября, 2020 13 часов назад, Rezinoviy_Ded сказал: платы BTS7960 и ардуино с прошивкой EMC Lite. Тут меня ждало разочарование. Ардуино на этой прошивке не работает с драйвером BTS7960 Если прошивка под Ардуино, то прекрасно там всё работает. Меняются местами ещё плюс минус мотора с драйвера. Подбери что работает у тебя смотря, уже как и что соединил. Ссылка на комментарий
Rezinoviy_Ded Опубликовано 4 октября, 2020 Автор Поделиться Опубликовано 4 октября, 2020 (изменено) И так, продолжаем издеваться над ископаемым! Кстати я нашёл наклейку с годом присвоения гарантии - "Warranty: 12 2003". Я долго разглядывал "зияющую пропасть" в панцире этого руля, оставшуюся после извлечения штатной логики и разъёма под картриджи. Прикидывал как размещу разъёмы на будущей заглушке. Прикинул, нарисовал деталь. Скрытый текст Сойдёт, подумал я, и отправил на печать. Сам занялся долгожданной проверкой. Прежде чем заниматься подключением штатных кнопок и лампочек, надо хотя бы убедиться что эта конструкция хоть сколько-то жизнеспособна. Втыкаю в комп, подключаю БП. Странно, руль какой-то ватный. Хотя в настройках всё на нуле. Отключаю БП. Руль всё ещё ватный, как будто что-то мешает проворачивать вал. (Я забеспокоился, наверное подшипникам хана.) Совершенно расстроенный отключаю STM32 от компа, уже подумываю об очередной разборке руля, замене подшипников и случайно проворачиваю руль... Он крутится легко! Я задумался. Как такое может быть? Подключаю к usb ещё раз. Руль снова ватный. Недоверчиво проверяю БП, он всё ещё не подсоединён к рулю. Как!? Откуда на моторе такой ток, который приводит к созданию поля, препятствующего свободному вращению вала? Конечно после я поигрался с настройками MMos ForceFeedback, но безрезультатно. Утилита не причём. Сижу теперь, много думаю. Тем временем заглушка распечатана. Скрытый текст Следом распечатал "столик" для STM32. А чтобы не приклеивать его к днищу руля, распечатал уголок, который можно надеть на корпус одной из струбцин. Склеено, прикручено и установлено. Скрытый текст Новое наблюдение. Если проворачивать руль медленно, сопротивления он не встречает. Как только я начинаю резко проворачивать его, ощущается встречный толчок. Но, минуточку. БП я не подключал. Как такое может быть? Изменено 4 октября, 2020 пользователем Rezinoviy_Ded Ссылка на комментарий
Beg Опубликовано 4 октября, 2020 Поделиться Опубликовано 4 октября, 2020 3 часа назад, Rezinoviy_Ded сказал: Недоверчиво проверяю БП, он всё ещё не подсоединён к рулю. Как!? Откуда на моторе такой ток, который приводит к созданию поля, препятствующего свободному вращению вала? при подаче питания (+5В) на контакты (R_en и L_en) Н-мост замыкает накоротко провода на мотор, тем самым мотор превращаешься в закороченный генератор я решил проблему вот так: (отключил скрутку VCC+R_en+L_en от +5В на STM32, работает к сожалению не со всеми BTS) 3 часа назад, Rezinoviy_Ded сказал: Если проворачивать руль медленно, сопротивления он не встречает сила сопротивлления ~ прямо пропорциональна скорости вращения (т.к. возрастает ЭДС на двигателе, возрастает ток, а из за тока возрастает и сила сопротивления вращению) 1 Ссылка на комментарий
Rezinoviy_Ded Опубликовано 5 октября, 2020 Автор Поделиться Опубликовано 5 октября, 2020 @Beg С моим экземпляром получилось, отлично. С этим разобрались. Ну а теперь самая долгая и нудная часть - подключение россыпи кнопок к плате. Караван как-то в своей теме делился распиновкой STM32F4 под кнопки G27. Вот мне нужно то же самое, но для STM32F103VET6. Видел где-то распиновку моей платы с тремя или четырьмя кнопками, но у меня то их двенадцать. Да ещё плюс четырёхпозиционный джойстик в центре баранки. К каким выводам можно/нужно всё подключать я не знаю. Ссылка на комментарий
Sasha Kuzz Опубликовано 26 декабря, 2020 Поделиться Опубликовано 26 декабря, 2020 И что дальше........? Ссылка на комментарий
Рекомендуемые сообщения