Wep80 0 Опубліковано 7 серпня, 2016 Поділитися Опубліковано 7 серпня, 2016 Дублёр очень хорош. Какая порода? Цитата Посилання на коментар Поділитись на інші сайти Поділитися
RUSHPIL 1 Опубліковано 7 серпня, 2016 Поділитися Опубліковано 7 серпня, 2016 А я и не знаю даже. 3 года назад взяли по объявлению на Авито и теперь вот "ездит" со мной периодически Цитата Посилання на коментар Поділитись на інші сайти Поділитися
Ilia 0 Опубліковано 12 серпня, 2016 Поділитися Опубліковано 12 серпня, 2016 RUSHPILА корпус сами делали или покупали? Цитата Посилання на коментар Поділитись на інші сайти Поділитися
Vivan755 0 Опубліковано 12 серпня, 2016 Поділитися Опубліковано 12 серпня, 2016 Три сообщения назад ясно сказано — корпус покупной. Цитата Посилання на коментар Поділитись на інші сайти Поділитися
yourdearm 0 Опубліковано 2 вересня, 2016 Поділитися Опубліковано 2 вересня, 2016 Обновился до версии 53.004, проблема все та же. При ручной передаче в терминал все отлично, но данные из сима не идут. Цитата Посилання на коментар Поділитись на інші сайти Поділитися
RUSHPIL 1 Опубліковано 7 вересня, 2016 Поділитися Опубліковано 7 вересня, 2016 проблема все та же Предыдущий файл обязательно сохранить и попробовать тестовую сборку, где при запуске в нижней строке должны отображаться вместо нулей числа, когда симулятор запущен. Тестовая сборка: http://my-files.ru/5x02r2 Цитата Посилання на коментар Поділитись на інші сайти Поділитися
IgOr_Kl 0 Опубліковано 9 вересня, 2016 Поділитися Опубліковано 9 вересня, 2016 моя тешка)) Цитата Посилання на коментар Поділитись на інші сайти Поділитися
Alex_B 0 Опубліковано 10 вересня, 2016 Поділитися Опубліковано 10 вересня, 2016 Ну что-же, тест шаговых двигателей пройден, но результат немного не порадовал. Использовались двигатели 28byj-48.1. Редуктор двигателей 1/64, что для приборов немного медленно.2. Люфт двигателей дает вранье на 2-3 км/ч3. 6 приборов, сидящих на 1-ой Atmega16, дают дрожание стрелок, играть конечно можно, но в идеале каждый прибор должен иметь свой контроллер, пускай даже Attiny2313. Быстродействие процессора тут ни к чему, потому-что он ждет паузы между шагами, у этого двигателя они составляют аж 3300 us в полношаговом режиме.Ну а так вроде-бы ничего. Надо будет дособирать 2-ой блок с амперметрами и лампами и посмотрим.видео https://drive.google.com/open?id=0BxL2Uty_fV1fV2F1VGpNcTQxU0Uфото https://drive.google.com/open?id=0BxL2Uty_fV1fMm9yNFJaRk5WVDAпримерная схема с исходником https://drive.google.com/open?id=0BxL2Uty_fV1fTTdTenE4bXNQMGM Цитата Посилання на коментар Поділитись на інші сайти Поділитися
RUSHPIL 1 Опубліковано 10 вересня, 2016 Поділитися Опубліковано 10 вересня, 2016 (змінено) Отлично выходит!Жаль, что редко появляетесь.Я по своей наивности тоже обманулся с 28byj-48. Не проведя никаких тестов заказал 6 штук с Али. Один у меня валялся до этого. И вот пока они шли с Китая я начал тестить возможность их применения на одном таком двигателе. Крутил на полушаге согласно спецификации. Естественно убил меня первым делом люфт. На моей шкале это вылилось враньем в 0,2 кгс/см*2. Во воторых обязательное применение ULN2003 и ток потребления всего этого дела. На скорость пожаловаться не могу, т.к. крутил только одним мотором варьируя паузу между переключениями портов для коммутации обмоток. В итоге, почитав изыскания виртуальных пилотов, остановил свой выбор на шаговом двигателе X27.168 для приборных панелей автомобилей:http://savepic.net/8438846m.jpg Потребление в 20 мА дает возможность подключаеть его непосредственно к микроконтроллеру. Режим полушага состоит из 6 переключений портов (против 8 переключений у 28byj-48). Отсутствие люфта, подобного у 28byj-48. Размеры и масса меньше. Вал около 1 мм в диаметре, что удобно для насаживания стрелок.Я заказал один на Али. Поэкспериментировал и мне он понравился. Заказал еще 6 штук. Пока идут прикидываю, как это всё дело будет управляться. Идея в том, что данные с компа приходят в головной контроллер по UART. На каждый мотор (читай МАНОМЕТР) будет свой контроллер на Atmega48pa. Головной контроллер раздербанивает строку, пришедшую с компа, на фрагменты с нужными параметрами, переводит эти параметры из формата строки в числовой формат и по SPI отсылает их в контроллеры управления шаговиками. Они в свою очередь по прерыванию SPI считывают эти параметры и в основном цикле крутят вправо или влево в зависимости от сравнения пришедшего параметра с переменной-счетчиком. Еще у летчиков-виртуальщиков подглядел замечательную идею для датчиков начального положения. Идея в том, что датчиков этих НЕТ. Контроллер запитывается через обычный диод. За диодом ставим фильтрующий конденсатор на 4700 мкФ. Перед диодом шину питания заводим на ногу компаратора микроконтроллера через делитель. В итоге:при пропадании напряжения (его снижении) перед диодом компаратор уловит этот момент и вызовет прерывание, в обработчике которого мы сохраним значение переменной, отвечающей за положение стрелки, в EEPROM. В момент просадки напруги (отключения питания) процесс сохранения в EEPROM обеспечит конденсатор, стоящий после диода. Таким образом при следующем включении питания читаем из EEPROM и приравниваем переменную отклонения стрелки к сохраненному значению до отключения и даём понять микроконтроллеру, с какого места нам плясать надо. Поэтому 6 моторов 28byj-48 теперь пылятся на столе. Жду X27.168. Вот тут пара тем с форума немецких коллег по цеху. Правда там речь об ихнем симулятору Zusi, но задачи ставят аналогичные. Тоже реализация на шаговиках:http://forum.zusi.de...hp?f=25&t=13044http://forum.zusi.de...hp?f=25&t=12360 Несколько вопросов: Вы крутили на полношаговом режиме судя поБыстродействие процессора тут ни к чему, потому-что он ждет паузы между шагами, у этого двигателя они составляют аж 3300 us в полношаговом режиме. 1. Почему не на полушаге? Плавность и точность значительно выше. 2. Я не силён в Cи, поэтому хочу спросить про алгоритм по обработке шаговиков. Шаговики обрабатываются последовательно в основном цикле? 3. Самый главный - Вы значение уравнительного резервуара брали из: 1.http://savepic.net/8391742m.jpg ИЛИ 2.http://savepic.net/8390718m.jpg Никак не могу найти адрес хранения значения УР, которое отображается на блоке индикации КЛУБ. Вот то, что на первом рисунке нашел. Но мне надо значение, которое на втором скрине. У Вас как с этим дела обстоят? Змінено 11 вересня, 2016 користувачем Vivan755 Цитата Посилання на коментар Поділитись на інші сайти Поділитися
Alex_B 0 Опубліковано 11 вересня, 2016 Поділитися Опубліковано 11 вересня, 2016 Мне кажется напрямую к контроллеру не надо, все-таки индукция, пусть и не большая может дать глюк. А без датчиков нуля мне кажется не обойтись, иначе любой пропуск шагов, мусор в передаче данных, сбой EEPROM приведет к потере нуля. Кстати UART надо подтягивать к 5 В, иначе 3.3 В с переходника USB-UART на длинных проводах у меня глючили.1. На полушаге я делал, но толку с таким люфтом уже нет, нельзя сказать, что он сильно мешает, механические скоростемеры помню врали куда больше.2.3. В двух словах не скажешь, написал отдельно. https://drive.google.com/open?id=0BxL2Uty_fV1faldGM3VybDlsYzA Цитата Посилання на коментар Поділитись на інші сайти Поділитися
Vivan755 0 Опубліковано 11 вересня, 2016 Поділитися Опубліковано 11 вересня, 2016 Ещё раз просьба ко всем — вражеских обозначений не использовать. 4700 мкФ — это 4700 мкФ, 3,3 В — 3,3 В, с разделением пробелом и русскоязычными единицами. Основные языки форума — русский и украинский.Никто не использует микроамперметры? Никаких нулей ловить не надо, на ШИМ цепляются отлично, пусть и погрешность определённая есть, но она ерундовая. Цитата Посилання на коментар Поділитись на інші сайти Поділитися
yourdearm 0 Опубліковано 11 вересня, 2016 Поділитися Опубліковано 11 вересня, 2016 (змінено) Проблема как всегда с моей невнимательности, запускал не из Program Files и не под админом. Так что смело заявляю, работает все, система Win 8.1 x64, Arduino UNO R3, сим 53.004. Правда есть один нюанс, либо в дисплее, либо в коде ардуины. Не выводит старший разряд значения следующего ограничения скорости (на третьем скрине Sp3=43. вместо 143). 1.http://savepic.net/8422493.jpg 2.http://savepic.net/8425565.jpg 3.http://savepic.net/8415325.jpg P.S.Если тут еще есть те, кто не знает формат вывода данных в UART, то вот что удалось расшифровать:http://savepic.net/8425562.jpg http://savepic.net/8405085.jpg Единственное, что не могу понять, предназначение трех нулей в конце. В ходе поездки никак не менялись, на дисплей не выходят. Дело за "малым", разделить строку на переменные и строить приборную панель P.P.S Автору сего чуда огромное спасибо за возможность осуществить давнюю мечту! Змінено 11 вересня, 2016 користувачем moskal.il Большие картинки прячьте под спойлер. Цитата Посилання на коментар Поділитись на інші сайти Поділитися
Женя 0 Опубліковано 12 вересня, 2016 Поділитися Опубліковано 12 вересня, 2016 Что уже на дисплее отображается скорость, давление и километраж? Где скачать код или программу? А то дисплей светится, но без показателей. Цитата Посилання на коментар Поділитись на інші сайти Поділитися
yourdearm 0 Опубліковано 12 вересня, 2016 Поділитися Опубліковано 12 вересня, 2016 Где скачать код или программу? Все, что выводит и принимает данные взято отсюда Тут версия, в которой организован вывод и на светодиоды и на дисплей. http://rghost.ru/7bR6yTSvD Цитата Посилання на коментар Поділитись на інші сайти Поділитися
RUSHPIL 1 Опубліковано 12 вересня, 2016 Поділитися Опубліковано 12 вересня, 2016 (змінено) Мне кажется напрямую к контроллеру не надо, все-таки индукция, пусть и не большая может дать глюк.Я ничего не заметил при тестах. У в авиасимуляторщиков тоже напрямую подключены. Посмотрим... В двух словах не скажешь, написал отдельно. https://drive.google...aldGM3VybDlsYzA Благодарю за такой развернутый ответ! if(UR>count_motor2) { motor2_right(); }Это условие для выхода на подпрограмму motor2_right()? После выполнения подпрограммы возвращаемся обратно, так? Вчера мальца переделал свой код, позаимстовав немного идею обработки из Вашего кода. А вот с поиском ячеек памяти по Вашему описанию я так и не понял. Правда использую Artmoney. Ячейка ураванительного резервуара - динамическая. Ищем адрес указателя на нее. У меня находится на неё указатель с динамическим адресом. После перезапуска и его адрес уже не действителен. Приходится искать по-новому. Пробую покурить ваш мануал еще раз. Может таки дойдет. У меня в файле конфигурации адреса прописаны четко. Например:&H90C1318&H8FB4F18&H7B4CB4Как сюда добавить смещение в +30 при постоянно меняющемся указателе пока не догнал. Надо операцию вычисления добавлять в код? Правда есть один нюанс, либо в дисплее, либо в коде ардуины. Не выводит старший разряд значения следующего ограничения скорости (на третьем скрине Sp3=43. вместо 143). Похоже на сбой фрагментации строки. Если у других также, то надо будет посмотреть в чем дело. Единственное, что не могу понять, предназначение трех нулей в конце. В ходе поездки никак не менялись, на дисплей не выходят. Это указатель задатчика скорости на ЭП1М. Должен отображать заданную скорость, но не на дисплее, а на модуле вывода скорости, который подключается к Arduino. Никто не использует микроамперметры? Никаких нулей ловить не надо, на ШИМ цепляются отлично, пусть и погрешность определённая есть, но она ерундовая. Неспортивно. Для нас помимо результата еще сам процесс наступания на грабли с последующий сатисфакцией от решения проблемы важен. ШИМ колхозно будет выглядеть в виде миллиамперметров в качестве манометров. Я думаю даже штатные амперметры ТЭДов и напругу КС посадить на шаговики. Шкалы уже начал отрисовывать в ФШопе. Змінено 12 вересня, 2016 користувачем RUSHPIL Цитата Посилання на коментар Поділитись на інші сайти Поділитися
RUSHPIL 1 Опубліковано 12 вересня, 2016 Поділитися Опубліковано 12 вересня, 2016 Вдогонку тест манометра ТЦ на шаговике X27.168. Связь двух Arduino по SPI интерфейсу: Alex-B, с какой периодичностью у Вас из компьютера программа отправляет данные? Цитата Посилання на коментар Поділитись на інші сайти Поділитися
yourdearm 0 Опубліковано 12 вересня, 2016 Поділитися Опубліковано 12 вересня, 2016 Еще заметил одну вещь, на тепловозах без КЛУБ-У ограничения скорости на дисплей не выходят, только текущая. Цитата Посилання на коментар Поділитись на інші сайти Поділитися
Alex_B 0 Опубліковано 13 вересня, 2016 Поділитися Опубліковано 13 вересня, 2016 Это условие для выхода на подпрограмму motor2_right()? После выполнения подпрограммы возвращаемся обратно, так? Да, верно.Значит по трейнеру:Время до запуска - нужно для запуска трейнера до игры, чтобы не сворачивать её потом во избежании вылетаCOM порт - выбираем порт нашего переходника UARTСкорость COM - должна быть такая же, как в прошивке контроллераЗадержка передачи - это как раз периодичность отправления данных в мсекНастройки - там множители приборов для градуировки шкалы, например скорость 80*1,5=120 - на самом деле скорость 80, но на шкалу, по шагам она ляжет как надо. Необходимо использовать дробные числа. Задержка шагов приборов это пауза между шагами мксек (передается по буферу 57-ым и 58-ым байтом). Ну и лампа бдительности может для красоты мигать в мсек.Теперь поиск данных. К каждой игре нужен свой подход, поэтому определенных правил нет. Например в MSTS вообще все адреса динамические, так что статические это скорее исключение. Давайте тогда с конца начнем, Вы находите динамичесий адрес значения, например ТМ - это 8-байтное число double с точкой. Оно находится в динамическом блоке (довольно маленьком или запиханном между других процессов), который винда предоставляет при запуске игры. Он каждый раз разный в зависимости от настроения винды. Но игра все-таки знает про него, точнее про адрес его начала. Он хранится в статических адресах процесса и для пневматики 0x05340e68(манометры), а для электрики 0x06622ec4(лампы компрессоров, вентиляторов,...).(Версия игры 53,005). Когда вы в редакторе памяти посмотрите на эти указатели, то увидите там 4-байтный адрес (который надо читать задом наперед) того динамического блока, который валяется на просторах оперативки. Он будет тем самым началом, от которого надо написать смещение. Неприятность в том, что смещения разные для каждого локомотива, поэтому сам локомотив, выбранный в настоящий момент игроком вам надо будет искать по сигнатуре (уникальной последовательности чисел в памяти), либо считывать его из окна "zdsimulator.exe". 1-ый вариант мне нравится больше. Все смещения в файле "zdsim503.txt". Я просто не понял на каком языке у вас трейнер для игры. А вообще может подойдет моя? Расшифровку буфера и сам трейнер я уже выкладывал. Цитата Посилання на коментар Поділитись на інші сайти Поділитися
RUSHPIL 1 Опубліковано 13 вересня, 2016 Поділитися Опубліковано 13 вересня, 2016 Вот, теперь доходчиво. Вынужденная привязка к локомотиву - вот что тяжко. Какой объем работы надо проделывать, чтобы при выходе новой версии адаптировать программу.Повторю свой вопрос: с какой периодичностью у Вас из компьютера программа отправляет данные (в миллисекундах)? Я просто не понял на каком языке у вас трейнер для игры. Написан на VB 2010. Цитата Посилання на коментар Поділитись на інші сайти Поділитися
Alex_B 0 Опубліковано 13 вересня, 2016 Поділитися Опубліковано 13 вересня, 2016 Да, без привязки никак, отвязаться от версий игры с помощью "поиска сигнатур" для пневматики и электрики тоже не выход, т.к. они все дырявые с большим количеством нулей. Да, если у вас VB 2010, то мой исходник на C# наверное вам не поможет.А по поводу программы я уже писал. Задержка передачи - это как раз периодичность отправления данных в мсек. Вам остается только вбить туда желаемое значение. Кстати, у вас моя программа запускается? А то у меня XP. Всё никак не переберусь на новый комп. Цитата Посилання на коментар Поділитись на інші сайти Поділитися
RUSHPIL 1 Опубліковано 19 вересня, 2016 Поділитися Опубліковано 19 вересня, 2016 Alex_B, есть мысли как ячейки памяти в тренажере сделать статическими вместо динамических с нужными нам параметрами? Держу связь с разработчиком тренажера Вячеславом и ищем путь сохраенения значений параметров при перезапуске тренажера. Вячеслав вывел для теста значение УР в информационную строку вверху, где отображаются обороты дизеля ТЭМ18Д, позиция контроллера и т.д. Ячейка памяти все равно динамической осталась Цитата Посилання на коментар Поділитись на інші сайти Поділитися
Alex_B 0 Опубліковано 21 вересня, 2016 Поділитися Опубліковано 21 вересня, 2016 Все же я думаю это ни к чему. Во первых помимо zdsimulator есть msts, World of Subway 1,2,3 (тоже кстати довольно неплохая игра про метро) и может какие-то еще игры. А там всё динамическое. Поэтому к этим играм тоже надо будет прикрутить пульт. А во вторых переход на новую версию не так страшен. Надо просто заново найти указатели на пневматику и электрику, и если есть новые локомотивы, то пробежаться по схемам и написать смещение. В принципе это не так сложно. И потом у меня есть мысль не только читать, а записывать ячейки памяти в процессе игры, например положение крана, контроллера напрямую. Это бывает полезно в случае резкого перемещения рукоятки скажем из 1-го в 5-ое, и если игра в этот момент слегка тормознет, то MCabMapper не отработает положение и будет сбой позиций. А так будет точная синхронизация ручки пульта и ручки в игре. Я вобщем-то не бог весть какой программист и практически 60% кода заимствовал из интернета. А делать из динамических статические это очень нагло вмешиваться в память процесса, как правило грозит синим экраном, без разработчика не вариант. Кстати лампы вентиляторв, компессоров и пр. тоже надо буде переводить в статические... Вобщем мне кажется вполне можно работать с динамикой. Цитата Посилання на коментар Поділитись на інші сайти Поділитися
Alex_B 0 Опубліковано 25 вересня, 2016 Поділитися Опубліковано 25 вересня, 2016 Видео законченного проекта https://drive.google.com/open?id=0BxL2Uty_fV1fMWFkU3MzVkE2SVUЕго лучше скачивать, а то Google Диск при просмотре урезает качество.Схемы с прошивками и программа-трейнер https://drive.google.com/open?id=0BxL2Uty_fV1fMjZpRGVISHo5amcСхемы скорее для ознакомления, собранные на Atmega8 и 16. Если у кого-то появится мысль повторить, то надо будет дорабатывать их "напильником" (заменять некоторые компоненты своими, подгонять под свои двигатели и.т.д).Вобщем играть на этом пульте можно, но как я и думал 4 амперметра скажем на ЧС8 перемещаются довольно медленно. Но с другой стороны таких машин только 2 - ЧС7 и ЧС8. На остальных один или два амперметра, так-что терпимо. Основная проблема это как всегда корпуса. Поэтому пришлось остановиться на "ламинатно-гробообразном варианте".Следующий этап теперь - допиливание программы под MSTS и World of Subway 1,2,3. и запись данных пульта напрямую в память, скорее всего через комбинации клавиш и MCabMapper. Цитата Посилання на коментар Поділитись на інші сайти Поділитися
alex 1980 0 Опубліковано 16 жовтня, 2016 Поділитися Опубліковано 16 жовтня, 2016 Подскажите пожалуйста подробнее как подключить модуль скорости к ARDUINO. Какие компоненты помимо индикатора там применяются? Если можно, так же подробно как и подключение светодиодов к ARDUINO. Буду очень признателен. http://savepic.net/7697219.jpg Цитата Посилання на коментар Поділитись на інші сайти Поділитися
RUSHPIL 1 Опубліковано 17 жовтня, 2016 Поділитися Опубліковано 17 жовтня, 2016 (змінено) Схема модуля:http://savepic.net/6452660m.jpg Фьюзы конфигурации микроконтроллера:http://savepic.net/6477239m.jpg Прошивка микроконтроллера:http://rgho.st/8tTCZJpcF Схема соединения между модулями:http://savepic.net/8498412m.jpg Модуль скорости запитывается от Arduino. Таким он получился у меня:http://savepic.net/8492268m.jpg Змінено 17 жовтня, 2016 користувачем RUSHPIL Цитата Посилання на коментар Поділитись на інші сайти Поділитися
Рекомендовані повідомлення
Приєднуйтесь до обговорення
Ви можете написати зараз та зареєструватися пізніше. Якщо у вас є обліковий запис, авторизуйтесь, щоб опублікувати від імені свого облікового запису.
Примітка: Ваш пост буде перевірено модератором, перш ніж стане видимим.