- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
- Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.
Octagon 5066 с системой DOS 6.22 485 modbus rtu драйвер
Octagon 5066 с системой DOS 6.22 485 modbus rtu драйвер
Здравствуйте. Помогите примерно набросать план действий.
Имеется старый мини компьютер Octagon 5066 с системой DOS 6.22. На плате есть 485 интерфейс. Так же есть устройство передающее параметры по 485 Modbus RTU. Так вот надо написать программу для опроса этого устройства.
Из навыков у меня только программирование на C Atmega. Ну и программирование на Delphi.
Т.е. грубо говоря Octagon 5066 это тот же контроллер и поход к написанию драйверов тот же? На что влияет операционная система DOS, она же только с файловой системой работает? Я так же должен работать с регистрами этого порта 485 как и в обычном контроллере? В dataseet ни какой инфы нет.
На чем писать драйвер C, C++? Нужен ли Assembler?
Я не понимаю структуру. Т.е. у меня будет файл Autoexec.bat, в котором будет прописан мой драйвер. Этот драйвер периодически опрашивает мой датчик и в определенном месте памяти находится нужное мне значение? И моя главная программа имеет доступ к этому участку памяти.
Какой более легкий и современный стенд мне собрать, что бы осилить данный проект? Чем больше документации и примеров тем лучше. Может это будет эмулятор ДОС на компьютере и обмен по 232 с контроллером?
Что мне надо знать? Спасибо
Имеется старый мини компьютер Octagon 5066 с системой DOS 6.22. На плате есть 485 интерфейс. Так же есть устройство передающее параметры по 485 Modbus RTU. Так вот надо написать программу для опроса этого устройства.
Из навыков у меня только программирование на C Atmega. Ну и программирование на Delphi.
Т.е. грубо говоря Octagon 5066 это тот же контроллер и поход к написанию драйверов тот же? На что влияет операционная система DOS, она же только с файловой системой работает? Я так же должен работать с регистрами этого порта 485 как и в обычном контроллере? В dataseet ни какой инфы нет.
На чем писать драйвер C, C++? Нужен ли Assembler?
Я не понимаю структуру. Т.е. у меня будет файл Autoexec.bat, в котором будет прописан мой драйвер. Этот драйвер периодически опрашивает мой датчик и в определенном месте памяти находится нужное мне значение? И моя главная программа имеет доступ к этому участку памяти.
Какой более легкий и современный стенд мне собрать, что бы осилить данный проект? Чем больше документации и примеров тем лучше. Может это будет эмулятор ДОС на компьютере и обмен по 232 с контроллером?
Что мне надо знать? Спасибо
-
- администратор
- Сообщения: 17585
- Зарегистрирован: 17 июн 2008, 16:01
- Имя: Евгений свет Брониславович
- Страна: Россия
- город/регион: Санкт-Петербург
- Благодарил (а): 825 раз
- Поблагодарили: 1653 раза
Octagon 5066 с системой DOS 6.22 485 modbus rtu драйвер
Приветствую!
Такое обилие вопросов выглядит как "шеф! всё пропало!" :)
А именно:
DOS может повлиять на всё - по желанию программиста.
как ModBUS Slave. Ну и Ваше устройство, которое собираетесь опрашивать. И свяжите два компа вместе по COM-портам.
Отправлено спустя 38 минут 58 секунд:
Такое обилие вопросов выглядит как "шеф! всё пропало!" :)
Задачу. От начала и до конца.
А именно:
- Кто из этих устройств есть модбас-мастер, а кто - модбас-слейв?
- данные Вы опросите, получите - и куда их девать? Архивировать, передавать другой программе, другому устройству, в каком виде?
Тот же - это какой? :) Вообще это для Вас - обычный компьютер архитектуры 80486, работаете с COM-портом как с обычным UART. Посмотрите, какой UART на этом контроллере, может быть 8250, 8250A, 8250B, 16450, 16550. Первый - давно снят с производства и вряд ли у Вас он. А примеры работы с COM-портом есть в учебниках, иногда они есть и от производителей.
А Вы DOSа никогда не видели? :) Вот и познакомитесь.
DOS может повлиять на всё - по желанию программиста.
Что, совсем-совсем пустой даташит? Даташит - это общее краткое описание чтобы только выбрать и купить устройство. Ищите другую документацию, она есть.
К Вашему Octagon'у добавьте какой-никакой VGA-монитор (или какой там можно к нему подключить), клавиатуру, блок питания, какой-нибудь накопитель. Встроенный накопитель 2МБайт - это флэш, ресурс записи ограничен, поэтому тренироваться лучше на стороннем накопителе, а потом уже готовый исполняемый файл со всем что ему надо перенести на системный носитель. На втором компьютере (на котором работаете) установите программки ModBUS Pool и ModSim - первая работает как ModBUS Master, вторая -
как ModBUS Slave. Ну и Ваше устройство, которое собираетесь опрашивать. И свяжите два компа вместе по COM-портам.
Отправлено спустя 38 минут 58 секунд:
Лично мне в своё время ASM для этого не понадобился.
По вопросам работы Форума можно обратиться по этим контактам.
-
- частый гость
- Сообщения: 462
- Зарегистрирован: 31 июл 2010, 09:12
- Имя: Павел
- Страна: РФ
- Благодарил (а): 10 раз
- Поблагодарили: 17 раз
Octagon 5066 с системой DOS 6.22 485 modbus rtu драйвер
В предыдущем посте все подробно расписано. На всякий случай добавлю, что лучший компилятор под такое железо и ОС - Borland C++ 3.1. При желании можно использовать и компиляторы Pascal той же фирмы
О программировании последовательных портов в DOS можно прочитать в этой книге (с примерами на Pascal):
https://books.google.ru/books/about/Пос ... edir_esc=y
О программировании последовательных портов в DOS можно прочитать в этой книге (с примерами на Pascal):
https://books.google.ru/books/about/Пос ... edir_esc=y
-
- почётный участник форума
- Сообщения: 3928
- Зарегистрирован: 20 янв 2010, 22:23
- Имя: Никита
- Страна: РФ
- город/регион: Мурманск
- Благодарил (а): 20 раз
- Поблагодарили: 220 раз
Octagon 5066 с системой DOS 6.22 485 modbus rtu драйвер
Могу рекомендовать классику - "Персональный компьютер IBM PC и операционная система MS-DOS" П. Нортона (того самого). По крайней мере, разберетесь зачем нужна DOS и как работает (работало) железо.
Но, похоже стоит задача сделать, а на изучение времени дано немного...
Если других задач на Octagon нет и резиденты не нужны, то все достаточно просто. А вот если нужен резидентный драйвер, а познаний по прерываниям и однозадачной операционке нет, остается посочувствовать...
Но, похоже стоит задача сделать, а на изучение времени дано немного...
Если других задач на Octagon нет и резиденты не нужны, то все достаточно просто. А вот если нужен резидентный драйвер, а познаний по прерываниям и однозадачной операционке нет, остается посочувствовать...
Опыт - это когда на смену вопросам: "Что? Где? Когда? Как? Почему?" приходит единственный вопрос: "Нахрена? "
-
- администратор
- Сообщения: 17585
- Зарегистрирован: 17 июн 2008, 16:01
- Имя: Евгений свет Брониславович
- Страна: Россия
- город/регион: Санкт-Петербург
- Благодарил (а): 825 раз
- Поблагодарили: 1653 раза
Octagon 5066 с системой DOS 6.22 485 modbus rtu драйвер
А как же Фигурнов? Старые издания "IBM-PC для пользователя". и его же издание "MS-DOS 6.22. Правда, он больше для пользователя а не программиста.
Послушаем автора, что за задание. Но применять эту машинку исключительно для опроса ModBUS-устройств в наше время - неразумно. Слишком сложно и дорого.
Отправлено спустя 9 минут 2 секунды:
Это классика, но именно на этом железе с ним могут быть проблемы - потому что это AMD и 586 процессор, а Borland C++ 3.1, по-моему, ничего не знает старше Интела 486. Я сам не сталкивался, но мои давние коллеги на давней работе, столкнулись, помучались и решили. С этого компилятора код получается компактнее чем с Паскаля, да и учиться лучше сразу по-взрослому. Так что я тоже за С++.
По вопросам работы Форума можно обратиться по этим контактам.
-
- почётный участник форума
- Сообщения: 3928
- Зарегистрирован: 20 янв 2010, 22:23
- Имя: Никита
- Страна: РФ
- город/регион: Мурманск
- Благодарил (а): 20 раз
- Поблагодарили: 220 раз
Octagon 5066 с системой DOS 6.22 485 modbus rtu драйвер
Можно и так, но проблемы это не снимает. Все это требует познаний в архитектуре х86 машин и принципов их работы вплоть до осциллограмм на шинах... Одна 20-разрядная адресация чего стоит. А эти знания кому-то в свое время достались, а кому-то уже нет. И стоит ли ради разовой задачи учить историю - большой вопрос. Не, в принципе-то знаний много не бывает, но обстоятельства...
И не надо. Книга про защищенный режим 286 [и выше] из "библиотеки системного программиста" объемом была больше Фигурнова или Нортона. А основные команды процессора в реальном одни и те же. ДОС, кстати, без экстендеров или пресловутой Win 3.[0..11] тоже защищенный режим не держит. И ++ тоже ни к чему, не просматривается необходимости в ООП в этой задаче.
Опыт - это когда на смену вопросам: "Что? Где? Когда? Как? Почему?" приходит единственный вопрос: "Нахрена? "
-
- частый гость
- Сообщения: 462
- Зарегистрирован: 31 июл 2010, 09:12
- Имя: Павел
- Страна: РФ
- Благодарил (а): 10 раз
- Поблагодарили: 17 раз
Octagon 5066 с системой DOS 6.22 485 modbus rtu драйвер
Проблемы исключать нельзя. Если хочется более нового компилятора, можно попробовать Borland C++ 5.x. На этом продукте остановилась линейка борландовских продуктов с поддержкой DOS. Честно скажу, в проде линейку 5.x не использовал. Может она и лучше поддерживает поздние процессоры DOS-овской эпохи. Если есть желание, можно попытаться использовать этот компилятор, тем паче что Эмбаркадеро ныне раздает его бесплатно (в виде набора приложений командной строки, без типа-IDE).Jackson писал(а): ↑10 дек 2018, 22:50Это классика, но именно на этом железе с ним могут быть проблемы - потому что это AMD и 586 процессор, а Borland C++ 3.1, по-моему, ничего не знает старше Интела 486. Я сам не сталкивался, но мои давние коллеги на давней работе, столкнулись, помучались и решили. С этого компилятора код получается компактнее чем с Паскаля, да и учиться лучше сразу по-взрослому. Так что я тоже за С++.
Отмечу, что DOS компиляторы, выпущенные Борландом после 3.1, делались по остаточному принципу, поскольку фирма в это время рожала новую линейку продуктов - C++Builder. Borland C++ 4.0 и более поздние вообще делались под Windows с сохранением возможности компиляции под DOS. Поэтому, с учетом положительной репутации 3.1 в сообществе программистов, лично я бы остановился именно на нем. И лишь по факту наличия проблем стал бы искать альтернативу.
И да, возможно, автору будет проще вообще выкинуть DOS-машинку и опрашивать Modbus устройство как-то иначе. Если Octagon нужен только как посредник для опроса Modbus RTU устройства, то можно использовать девайс типа этого:
https://www.moxa.ru/shop/com_v_ethernet ... te-mb3180/
Если же в вашем Octagon нужно реализовать какую-то логику управления (выполнять какие-то действия в зависимости от информации с Modbus RTU устройства), то тогда да, нужно программировать под DOS. Или искать другой подходящий (и более дешевый) контроллер без ДОСовских заморочек.
Отправлено спустя 7 минут 24 секунды:
Очень спорное утверждение. Необходимости ООП действительно нет. Однако, ООП позволяет существенно упростить задачу программиста (при наличии у последнего прямых рук). Кроме того, "плюсы" - это не только ООП. Шаблоны из STL очень упрощают жизнь.
Есть ряд задач, где использование "плюсов" категорически противопоказано. Но прикладная программа для опроса устройств по Modbus RTU - явно не такая задача.
-
- почётный участник форума
- Сообщения: 3928
- Зарегистрирован: 20 янв 2010, 22:23
- Имя: Никита
- Страна: РФ
- город/регион: Мурманск
- Благодарил (а): 20 раз
- Поблагодарили: 220 раз
Octagon 5066 с системой DOS 6.22 485 modbus rtu драйвер
Есть еще вариант - покупка готовой системы разработки с библиотеками и рантайм-лицензии для дос.
Опыт - это когда на смену вопросам: "Что? Где? Когда? Как? Почему?" приходит единственный вопрос: "Нахрена? "
-
- эксперт
- Сообщения: 1034
- Зарегистрирован: 25 июл 2008, 10:06
- Имя: Леонид
- Страна: РФ
- Благодарил (а): 34 раза
- Поблагодарили: 110 раз
Octagon 5066 с системой DOS 6.22 485 modbus rtu драйвер
Можно попробовать на сайте производителя примеры поискать.
В открытом доступе нет, но кто мешает запросить?
http://www.octagonsystems.com/support/obsolete-products
В открытом доступе нет, но кто мешает запросить?
http://www.octagonsystems.com/support/obsolete-products
Хард - это то, что можно швырнуть об стенку, а софт - это то, что можно лишь обматерить.
-
- освоился
- Сообщения: 290
- Зарегистрирован: 09 авг 2016, 13:49
- Имя: Чистилин Андрей Анатольевич
- Страна: Россия
- город/регион: Малоярославец
- Благодарил (а): 31 раз
- Поблагодарили: 35 раз
Octagon 5066 с системой DOS 6.22 485 modbus rtu драйвер
А что устройство или датчик то меряет/делает? Может уже и устройство поменять на более современное? С OPC сервером, на пример?
Modbus RTU перепахан вдоль и поперек, можно взять бесплатный OPC сервер на 32 тега и бесплатную SCADA же....
Modbus RTU перепахан вдоль и поперек, можно взять бесплатный OPC сервер на 32 тега и бесплатную SCADA же....
-
- эксперт
- Сообщения: 1034
- Зарегистрирован: 25 июл 2008, 10:06
- Имя: Леонид
- Страна: РФ
- Благодарил (а): 34 раза
- Поблагодарили: 110 раз
Octagon 5066 с системой DOS 6.22 485 modbus rtu драйвер
Возможно и "Прософт" сможет помочь, мануал у них на сервере есть:
ftp://ftp.prosoft.ru/pub/Hardware/Octag ... roPC/5066/
ftp://ftp.prosoft.ru/pub/Hardware/Octag ... roPC/5066/
Хард - это то, что можно швырнуть об стенку, а софт - это то, что можно лишь обматерить.
-
- администратор
- Сообщения: 17585
- Зарегистрирован: 17 июн 2008, 16:01
- Имя: Евгений свет Брониславович
- Страна: Россия
- город/регион: Санкт-Петербург
- Благодарил (а): 825 раз
- Поблагодарили: 1653 раза
Octagon 5066 с системой DOS 6.22 485 modbus rtu драйвер
А во всех других случаях он тут и бессмысленный. :)
Пусть автор задачу озвучит сначала.
Даже если оно не просматривается - совершенно не вижу, почему бы благородным донам не использовать ++.
По вопросам работы Форума можно обратиться по этим контактам.