Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ИС ЛР№1-8.doc
Скачиваний:
84
Добавлен:
11.02.2015
Размер:
1.62 Mб
Скачать
    1. Основные понятия многотактной схемы

Если выходные состояния релейной схемы зависят не только от входных состояний (как в комбинаторной схеме), но и от предыдущего состояния релейной схемы, то такую схему называют многотактной.

Обычно работу многотактной схемы представляют в виде таблицы включений, в которой состояния входных и выходных сигналов отображается во времени и разбивается на такты. Например, на рис.24 приведена таблица включений релейной схемы с одним входом и одним выходом. Состояние выхода меняется на противоположное на каждом такте при изменении входного сигнала с лог. «0» на «1».

  1. Пример таблицы включений многотактной схемы

Существует несколько методов реализации многотактных схем. Во всех них предполагается, что в релейной схеме будет использоваться элемент памяти, в котором происходит запоминание переднего или заднего фронта входного сигнала или их логической комбинации.

Например, для приведенной таблицы включений реализация на языках LADиSTLприведена на рис.25.

    1. Задание на лабораторную работу

  1. Изучить работу катушек с памятью. Реализовать программу многотактной схемы (рис.23). По результату работы программы построить таблицу включений.

  2. По заданной таблице включений разработать многотактную схему, проверить её работу путем экспериментального определения таблицы включений и сравнить её с заданной.

    1. Порядок выполнения работы

1. Создать новый проект. Заполнить конфигурацию станции, таблицу символов и сохранить созданный проект на диск.

2. Реализовать многотактную схему по рис.25 и экспериментально, с использованием эмулятора PLCSIMи пульта-имитатора, определить таблицу (диаграмму включений). Сравнить полученную таблицу включений с исходной (рис.24).

3. Разработать релейную схему по заданной таблице включений. Реализовать её в том же проекте. Используя эмулятор PLCSIMи пульт-имитатор определить таблицу включений.

4. Перенести проект в контроллер и проверить его работу с помощью пульта.

  1. Реализация заданной таблице включений на языках LAD(a) иSTL(б)

    1. Оформление отчета

Отчет по лабораторной работе должен содержать:

    1. Краткие сведения о работе катушек выделения фронта и временные диаграммы их работы.

    2. Релейные схемы реализации многотактных схем и их таблицы включений.

    1. Задание на самостоятельную работу

По заданной таблице включений разработать релейную схему.

Вариант 1

Вариант 2

Вариант 3

Вариант 4

Вариант 5

Вариант 6

Лабораторная работа №6

Изучение команд работы с аккумулятором процессора и адресации данных

Цель работы: изучить возможности обмена данными через аккумуляторы процессора, представление данных в различных форматах, функций обмена и преобразования этих данных в аккумуляторах, адресацию различных типов данных

  1. Общие сведения о регистрах аккумуляторов процессора

Аккумулятор процессора представляет собой специальный регистр (область памяти) расположенный непосредственно в процессоре и выполняющий функции промежуточного буфера. Размер аккумулятора составляет 32 бита, что соответствует 4-м байтам (по 8 бит) или двум словам (по 16 бит).

В зависимости от расположения слов и байт в аккумуляторе различают младший и старший байт и старшее и младшее слово. На рис.26 показано распределение байт и слов в аккумуляторе.

  1. Распределение слов и байт информации в аккумуляторе

Основными командами на языке STL, которые производят обмен информации через аккумулятор, являются команды загрузки L (load) и выгрузки T (transfer) аккумулятора.

Кроме основного аккумулятора (обычно обозначаемого как АК1 или аккумулятор 1) с которым работают команды загрузки и выгрузки, процессор содержит второй аккумулятор – АК2 (или аккумулятор 2) предназначенный для хранения данных передаваемых из первого аккумулятора.

Команда загрузки (L) записывает (загружает) содержимое своего исходного адреса или константу в аккумулятор 1, сдвигая всю уже содержащуюся в нем информацию в аккумулятор 2. Старое содержимое аккумулятора 2 при этом заменяется.

Команда выгрузки (Т) только копирует содержимое аккумулятора 1 и записывает его в соответствующую целевую (назначенную) область памяти.

На рис.27 показаны изменения, происходящие в аккумуляторах при выполнении команды загрузки.

  1. Передача данных из аккумулятора 1 в аккумулятор 2 при выполнении команды загрузки

Команды загрузки (L) и передачи (Т) аккумулятора можно использовать для обмена данными следующих размеров: байт (В, 8 бит); слово (W, 16 бит); двойное слово (D, 32 бита). Идентификаторы размера (B, W, D) используются для определения объема памяти занимаемых этими данными.

Если данные для обмена с аккумулятором составляет слово или двойное слово, то необходимо знать и четко представлять, как эти данные будут располагаться в области памяти. На рис. 28 показано как располагаются слова и двойные слова в маркерной области.

Адрес памяти, на который ссылаются при загрузки и выгрузки аккумулятора всегда представляет собой адрес байта, в котором расположен самые старшие биты слова или двойного слова. Остальные биты располагаются в следующих за ним байтах памяти. Поэтому при реализации функций работы с аккумуляторами необходимо следить, чтобы не произошло наложение информации при выгрузке информации в соседние ячейки.

Загрузка данных в аккумулятор может происходить из констант и адресов памяти. Для наглядности и удобства программирования загрузка констант может производиться в нескольких форматах. В табл.4 приведены операнды команд загрузки констант в зависимости от их представления. В табл.5 приведены варианты загрузки информации из адресов памяти.

  1. Расположение данных в маркерной области памяти

Над данными расположенные в аккумуляторе 1 могут быть проведены команды по перемещению байт и слов информации внутри аккумулятора 1. На рис.29 представлено действие команд по перемещению данных внутри аккумулятора 1: CAW – обмен местами байт младшего слова аккумулятора 1; CAD – обмен местами всех байт в аккумуляторе 1.

  1. Обмен байтов в аккумуляторе АК1

Таблица 4

Операнды команд загрузки констант

Операнд

Пример команды загрузки константы в аккумулятор

Описание команды

±

L +27

Загрузка 16-битовой целой константы в АКК1 представленной десятичным числом

В#(..,..)

L B#(100,12)

L B#(1,10,5,4)

Загрузка двух байт в АКК1 (число 100 в старший байт, число 12 в младший байт)

Загрузка четырех байт в АКК1 (число 5 в старший байт младшего слова, число 12 в младший байт младшего слова, 1 и 5 соответственно в старший и младший байт старшего слова)

L ‘ABCD’

Загрузка 4-х байтной символьной константы

2#...

L 2#10011011

L 2#10011111_10101011

L 2#10101010_10101010

_01010110_10101011

Загрузка 8-ми, 16-ти и 32-х битовых констант представленных двоичным числом

L#...

L L#+5

Загрузка 32-х битовой целой константы представленную десятичным числом

(B,W,D) 16#...

L B#16#EF

L W#16#FA6F

L DW#16#1FAE56AE

Загрузка 8-ми, 16-ти и 32-х битовых констант представленных шестнадцатеричным числом

C#...

L C#100

Загрузка 16-ти битового счетного значения

S5T#...

T S5T#1H23M46S250MS

Загрузка 16-ти битовой константы времени

L 1.0E+5

Загрузка 32-х битовой константы с плавающей точкой

Таблица 5

Примеры команд загрузки из адресов памяти

Размерность данных

Пример команды загрузки

Описание команды

В

L MB10

L IB0

Загрузка байта данных из маркерного байта MB10 и байта таблицы входного образа процесса IВ0

W

L MW11

L IW2

L C0

Загрузка слова данных из маркерного слова MW11, слова таблицы входного образа процесса IW2 и ячейки счетчика С0

D

L MD0

L ID0

Загрузка двойного слова из маркерной области MD0 и таблицы входного образа процесса ID0

В некоторых типах процессоров дополнительно имеется еще два аккумулятора обозначаемых АК3 и АК4. На рис.30 приведено перемещение информации в аккумуляторах при действии команд TAK, PUSH, POP, ENT, LEAVE.

  1. Действие команд пересылки данных между аккумуляторами процессора

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]