Типы данных и адресация памяти контроллера

 

Память данных контроллера разделяется на несколько областей. Входная память (I-память) связана с дискретными входами контроллера. В каждом цикле сканирования контроллер автоматически считывает состояния своих дискретных входов и записывает информацию о них во I-память. Выходная память (Q-память) связана с дискретными выходами контроллера. В каждом цикле сканирования контроллер автоматически устанавливает состояния выходных ключей в соответствии с информацией записанной в Q-памяти. Каждому дискретному входу (выходу) соответствует отдельная ячейка входной (выходной) памяти ёмкостью 1 бит. Такой тип данных называется логическим (в Step-7 он называется типом Bool). В таблице 1 приведены адреса битовых ячеек памяти, соответствующих дискретными входам и выходам, которые используются в лабораторном стенде.

 

Таблица 1

Условное обозначение входа (выхода) Адрес в памяти контроллера
A I125.3
B I125.4
C I125.5
X Q125.0
Y Q125.1
Z Q125.2

 

Структура адреса битовой ячейки, в которой хранятся данные типа Bool, следующая – сначала записывается буква, обозначающая область памяти, затем номер байта этой области (байты нумеруются с нуля), точка и номер бита в данном байте (биты также нумеруются с нуля, поэтому номер бита может быть 0…7).

Для хранения промежуточных данных не связанных непосредственно с входами м выходами контроллера можно использовать M-память. Принцип адресации отдельных битов M-памяти такой же как Q-памяти и I-памяти (например, M0.0, M0.1 и т.д.).

Кроме типа Bool используются и более сложные типы данных. Тип Byte занимает 1 байт памяти, данные этого типа представляют собой целые числа в диапазоне 0…255. Для адресации отдельных байтов памяти записывается буква области памяти, затем буква B (говорящая о том, что адресуется 1 байт) и номер байта – например (MB0, MB1, MB2 и т.д.).

Тип Word представляет собой двухбайтное целое число в диапазоне 0…65535. Вторая буква в адресе для такого типа будет W, а число представляет собой адрес первого байта из двух – например, MW10 адресует данные типа Word, которые расположены в байтах 10 и 11 M-памяти.

Тип Int представляет собой двухбайтное целое число со знаком в диапазоне –32768…32767. Адресуется также как тип Word (например, MW0, MW2, MW4 и т.д.). Следует помнить, что данные типов Word и Int не всегда совместимы друг с другом.

Типы Dword и Dint представляет собой четырехбайтное целое число без знака и со знаком соответственно. Для адресации четырёх байтов памяти второй буквой в адресе записывается D, а номер указывает на первый из четырёх байтов (например, MD0, MD4, MD8 и т.д.).

Тип Real представляет собой вещественное число (записанное в формате с плавающей точкой) и занимающее в памяти 4 байта. Адресация данных типа Real такая же, как типов Dword и Dint (например по адресу MD12 может находиться число любого из 4-байтных типов, занимающее байты 12, 13, 14, 15).

Аналоговый вход принимает аналоговый сигнал (напряжение 0…10 В), который подаётся на аналого-цифровой преобразователь, формирующий двухбайтный код типа Int. Этот код записывается в PI-память. Адрес двухбайтной ячейки памяти, связанной с аналоговым входом R – PIW752. Аналоговый выход получает выходной сигнал (напряжение 0…10 В) от цифро-аналогового преобразователя, на входе которого двухбайтный код типа Int. Этот код берется из PQ-памяти. Адрес двухбайтной ячейки памяти, связанной с аналоговым выходом H – PQW752.

В Step-7 возможна символическая адресация, т.е. вместо записи адреса можно записывать связанное с этим адресом имя (выбираемое по усмотрению программиста). Для установления связи имен и адресов заполняется таблица Symbol Table (рис.3)

 

 

Рис.3. Пример таблицы Symbol Table.

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: