суббота, 5 апреля 2008 г.

Программка для управления dir step контроллером

Попробуем написать простую программку для управления контроллером PLCoo2.
Я буду использовать язык Python, не спрашивайте почему, просто он мне нравится :)
Итак, для этого нам понадобится распиновка LPT порта и распиновка контроллера.
Вот они:это управление контроллером
1 STROBE ввод и вывод устанавливается PC после завершения каждой передачи
данных
2/9 D0-D7 вывод 8 линий данных
10 АСК ввод устанавливается в "0" внешним устройством после
приема байта
11 BUSY ввод устройство показывает, что оно занято, путем
установки этой линии в “1”
12 Paper out ввод для принтеров
13 Select ввод устройство показывает, что оно готово, путем
установки на этой линии “1”
14 Autofeed
Ввод и
вывод
15 Error ввод индицирует об ошибке
16 Initialize
Ввод и
вывод
17 Select In
Ввод и
вывод
18-25 Ground GND общий провод
а это выводы LPT порта

для работы с LPT портом понадобится дополнительный модуль pyparallel. Его легко найти в сети с помощью google.

Мой контроллер имеет два реле для управления нагрузками типа шпинделя станка или пылесоса или охлаждения.
Попробуем поуправлять одним из реле. Вывод реле 1 находится на первом выводе.
Это вывод Strobe.

Начнем писать программу
сначала импортируем модуль parallel
import parallel
также импортируем модуль time. Он нам пригодится для формирования временных задержек в программе.
import time
Создадим объект для управления портом
p=parallel.Parallel()
для установки бита Strobe используем метод setDataStrobe(значение)
Я приведу готовую программу, которая формирует 10 включений и выключений реле с периодом 1 секунда

import parallel
import time
p=parallel.Parallel()
for i in xrange(10):
____p.setDataStrobe(1)
____time.sleep(1)
____p.setDataStrobe(0)
____time.sleep(1)

Я не разобрался, почему в блоге удаляются пробелы, поэтому вместо 4-х пробелов поставил просто знаки _.
Попробуйте прочитать программу - python очень простой для понимания язык
В следующий раз мы попробуем поуправлять двигателями.

Кстати, совсем забыл сказать что язык Python - кросплатформенный, так что программка эта будет работать как в Windows так и в Linux (само собой, среда Python должна быть установленна в системе)

Комментариев нет: