c. Для задания начальных значений в слова памяти %MW10 …%MW14 вставьте соответствующие цепи в секцию №1.
Проверьте функционирование этой секции в режиме симулятора с помощью панели симулятора Time Management Panel. После перехода в режим RUN включите %I0.0 и наблюдайте изменение индикации текущего значения времени. Измените текущее значение времени симуляции с помощью перемещения его указателя или стрелок << >>, повторно включите %I0.0 и наблюдайте изменения.
d. В секцию №8 введите LD-программу второго примера из справочного пособия. Для совместимости с первым примером измените во втором примере адрес %I0.0 на %I0.5, а %I0.1 на %I0.6;
e. Для установки времени/даты используются биты системного слова %SW59. Установка системного бита %S59 = 1 разрешает изменения текущего времени и даты от %SW59. Каждый передний фронт изменения соответствующих битов %SW59 инкрементирует или декрементирует значения времени и даты. Включение %I0.5 вызывает увеличение, а включение %I0.6 – уменьшение текущего значения переменной, выбранной сигналами %I0.2 (часы), %I0.3 (минуты) или %I0.4 (секунды).
Проверьте функционирование этой секции в окне Debug ® Check PLC. Предварительно установите %M0 = 1. Для реализации сделанных изменений задайте %M0 = 0 и наблюдайте изменение индикации текущего значения времени на панели симулятора Time Management Panel.
Опробуйте установку значения времени и даты в диалоговом окне Adjust Time, доступном из окна Program ® Debug ® Check PLC или через TwidoSuite Application Launcher ® TwidoSuite Monitoring Utility. Время и дату можно установить также с помощью модулей дисплея оператора TWDXCPODC или TWDXCPODM.
a. в первой цепи осуществите собственно управление выходом %Q0.14 от входа %I0.17;
b. по переднему фронту %Q0.14 осуществите копирование значений дня недели, секунд, часа и минуты, месяца и дня, столетия и года в кодировке BCD из пяти системных слов, начиная с %SW49 в массив пяти слов памяти, начиная с%MW10 (%MW10:5 := %SW49:5);
c. по заднему фронту %Q0.14 повторите копирование, но в массив пяти слов памяти, начиная с%MW15;
d. произведите преобразование формата полученных значений из двоично-десятичного в двоичный, используя функцию BTI(), с разделением пар часа и минуты, месяца и дня в четыре отдельные слова памяти;
e. вычислите разность лет и переведите ее в дни, считая, что в году 365 дней (високосные годы не учитываются для упрощения задачи);
f. вычислите число дней с начала года для заднего фронта и добавьте его к разность лет в днях, затем вычислите число дней с начала года для переднего фронта и вычтите ее из полученной суммы. В результате будем иметь число дней между фронтами сигнала %Q0.4;
g. переведите полученную сумму в часы, умножив на 24;
h. добавьте к сумме в часах час заднего фронта и вычтите час переднего фронта;
i. переведите полученную сумму в минуты, добавьте к сумме в минутах минуты заднего фронта и вычтите минуты переднего фронта;
j. переведите полученную сумму в секунды, добавьте к сумме секунды заднего фронта и вычтите секунды переднего фронта.
Проверьте функционирование этой секции в режиме симулятора с помощью панели Time Management Panel. Рекомендуется выполнять отладку постепенно, контролируя описанную выше последовательность преобразований и вычислений. После перехода в режим RUN включайте %I0.17 на разные интервалы времени (секунды, минуты, дни, месяцы и годы) и наблюдайте фиксацию отметок времени переднего и заднего фронтов, а также получаемые результаты. Для задания больших интервалов изменяйте времена начала и конца симуляции, а также текущее значение времени симуляции перед каждым изменением %I0.17 с помощью перемещения указателя времени или стрелок << >> на панели Time Management Panel.
Проверьте функционирование этой секции, несколько раз переведя контроллер в состояние RUN, а затем STOP.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.