Контроллер на базе IBM PC
2218
8
Уважаемые форумчане хорошо разбирающиеся в компьютерном железе и, наверно, в программирование. Не знаю, в каком раздел было лучше поместить топик, но решил запостить здесь.=) Дайте, пожалуйста, совет по следующей проблеме.

Есть задача - из персонального компьютера сделать управляющую машину (контроллер), обеспечивающую функционирование некоего объекта (например, станка). Исполнительные механизмы приводятся в действие электромагнитными клапанами, обратные связи обеспечиваются бесконтактными датчиками (БВК) (что в общем случае, не принципиально). Общее число входов/выходов - 30. Контроллер должен обеспечивать вывод управляющих сигналов, ввод сигналов управления от стандартных кнопок и переключателей, желателен вывод текстовой и графической информации на монитор. В общих чертах понятно, что нужно городить плату (или платы) сопряжения со станком и писать управляющую программу.
Посоветуйте, кто может, литературу и (или) ссылки:
- как обеспечить связь машины со станком через LPT-порт;
- на каких языках пишутся программы для таких контроллеров и желательно литературу по ним.

Заранее благодарен.
SDodge
- как обеспечить связь машины со станком через LPT-порт;
---------------
? через порт и обеспечить:улыб:

- на каких языках пишутся программы для таких контроллеров и желательно литературу по ним.
------------
Для процессоров на оконечных устройствах - на асме или си, если есть... На мониторящих - управляющих РС - обычно на си.
SDodge
Вот только что-то я не понимаю в плюсах использования IBM PC по сравнению с микроконтроллерами!
Ну никак непойму!:улыб:
Минусов - куча, плюсов - невижу.
Да и связь легче организовать - а то 30 in\out напрямую через LPT - как-то странно!:улыб:
линий порта ну никак не хватит.
Значит нужно ставить шифратор/дешифратор. Очередной гемморой.
А так - взять несколько микроконтроллеров, пара - для датчиков, один для сбора и анализа инфы.
И все...:улыб:
вот оно счастье.
SDodge
>из персонального компьютера сделать управляющую машину
Это наверное из той серии: "Когда у тебя в руках молоток, тогда всё вокруг кажется гвоздями." :улыб:
На самом деле совершенно не очевидно, что применение порта LPT существующего компа для управления технологическим оборудованием, лучшее решение. Простое удаление каких либо датчиков от компа без соответствующих развязок, соглосования уровней и пр... приведет к тому, что в один прекрасный момент порт просто сгорит. Т.е. необходима железка сбора данных, их предварительная обработка, набор управляющих ключей, включающие элементы аварийной защиты от противоправных действий систем управления... и только потом устройство связи с компом и ПО.
А, потом вдруг окажется, что комп лучше соединить не LPT, а COM и необходимы элементы ручного управления без внешнего компа :ухмылка:
SDodge
Для такой несложной задачи, в принципе, можно. Если хватит тяму сварганить плату сопряжения с портом. В промышленных же решениях оборудование управляется по специальным шинам на оптике или меди. Наши контроллеры построены на процессорах Motorolа, таких, какие были ы PowerMac G3. У них внутри своя операционка, а их программирование осуществляется из под Винды используя очень высокоуровневый язык диаграмм. Там просто разные функциональные блоки объединяются нужным образом, а потом приложение загружается в контроллер. Сами блоки пишутся под Windows на C++ b ассемблере, в отдельной среде, используя программный эмулятор нужной модели контроллера. Для разработки и управления готовым производтсвом используется универсальный программный комплекс, заточенный под все решения, поставляемые нашей компанией-хозяином. В нем разрабатываются как программы для контроллеров, так и интерфесы управления (для них вообще Visual Basic встроен).

ЗЫ. Ваш "контроллер" точно не должен работать под Windows. Вот как-то я с трудом это себе представляю... Как правило, QNX используется. Работа же с LPT в принципе возможна на очень многих языках. Но обычно пишется или на С++ или вообще на ассемблере.
PN
Насчёт того, зачем это надо.
1. Решающий фактор- это цена вопроса. Готовый фирменный контроллер с потребным количеством вх/вых (30), обеспечивающий требуемую функциональность (коррекция технологических параметров в процессе работы оборудования) в комплекте с ПО, кабелями связи и без учёта стоимости разработки и обкатки технологичесой программы независимо от производителя (Мицубиси, Шнейдер Электрик, Фесто) тянет на 700-1000 евро (цены на апрель 2006 г). При этом для душевного спокойствия все исполнительные элементы (в частности, электромагнитные клапаны) непосредственно от выходов контроллера лучше всё-таки отвязать.
Подержанный РС на старых пнях (поровну каких-2, 3) стоит сами знаете сколько-в 2тыс. рублей укладывается без проблем. Модернизировать необходимо 8-10 станков. Восемь раз по 2т. рублей-это интересней, чем восемь раз по 800 евро. Тем более, что с деньгами всё как всегда.
2. Абсолютное отсутствие проблем в случае выхода РС из строя-достал из ЗИПа другой системник и вперёд. Теперь представьте, что у вас умер фирменный контроллер: цена плюс возможное отсутствие на складе у продавца. Даже если случай гарантийный.
Совершенно понятно, что нужно придумывать плату сопряжения с оборудованием, содержащую некоторую логику для обеспечения нужного количества вх1 /вых, совершенно ясно, что нужно всё от всего отвязывать и по уровням согласовывать, но вот это как раз не проблема - во-первых, полученное образование позволяет, во-вторых, станки у меня однотипные, поэтому ассортимент разрабатывать не нужно. То же самое можно сказать об управляющей программе - практически это одна (с небольшими вариациями) программа на все станки.
Насчёт «..взять несколько микроконтроллеров, пара - для датчиков, один для сбора и анализа инфы.И все...»
1. Для станка состояние датчиков и органов управления-это и есть «инфа».
2. Это вызывает потерю части вх/вых из-за необходимости распараллеливать часть входных сигналов по нескольким контроллерам.
3. Цена-см. выше.
На тему"Когда у тебя в руках молоток, тогда всё вокруг кажется гвоздями.»:
Если у вас есть микроскоп, который стоит дешевле молотка, а гвозди забивает почему-то лучше, ну и лупите себе по гвоздям микроскопом, зря, что-ли человечество технический прогресс выдумало.
Может РС и действительно не лучший вариант для управления технол. оборудованием, но во многом- оптимальный. В конце-концов, станки с ЧПУ чем от этого отличаются? Тем, что там не IBM PC совместимый компьютер стоит? Да, стоит там либо самопал от завода изготовителя, либо «Электроника-60» (были раньше такие станки, марку точно не помню). Так что почему бы и нет?
SDodge
Могу ошибаться, но у LPT порта малое число входных линий.
Совершенно недорогой и простой контроллер можно сваять на базе ATMELa или PICa, это на мой взгляд лучше чем десятилетний РС китайской сборки. Он будет ненамного сложнее платы сопряжения с LPT портом.
Электроник
Кто же машает ввести внешний регистр управления и с LPT записывать туда адрес считываемых/записываемых байтов, стробы...?
SDodge
Может РС и действительно не лучший вариант для управления технол. оборудованием, но во многом- оптимальный. В конце-концов, станки с ЧПУ чем от этого отличаются? Тем, что там не IBM PC совместимый компьютер стоит?
Скупой платит дважды...
На вскидку из минусов PC: меньшая защищеность по напряжению, пыли и пр. и пр.; программы нет - писать с 0, а это всегда дороже чем купить серийную прогу.

Посоветовать лишь могу поискать готовое решение, в виде плат внутренних или внешних. К которым есть какой-то программный вменяемый интерфейс. А внешний девайс реально лучше и проще всего на COM-порт сажать. Специально такими девайсами не грузился, но думаю на просторах России таких должно быть в избытке... http://forum.rcdesign.ru/lofiversion/index.php/t19608-150.html