Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
514.doc
Скачиваний:
21
Добавлен:
30.04.2022
Размер:
12.5 Mб
Скачать

3.2. Специальные виды кодов

Р

Рис. 9

ассмотрим те специальные коды, которые используются датчиками и задатчиками, а также коды, наиболее удобные для управления исполнительными и индикаторными устройствами (рис. 9 – приведены наиболее простые решения, не связанные

Таблица 7

q=10

q=2

q=8

q=16

0

00000

0

0

1=20

00001

1

1

2=21

00010

2

2

3

00011

3

3

4=22

00100

4

4

5

00101

5

5

6

00110

6

6

7

00111

7

7

8=23

01000

10

8

9

01001

11

9

10

01010

12

A

11

01011

13

B

12

01100

14

C

13

01101

15

D

14

01110

16

E

15

01111

17

F

16=24

10000

20

10

17

10001

21

11

18

10010

22

12

19

10011

23

13

20

10100

24

14

21

10101

25

15

22

10110

26

16

23

10111

27

17

24

11000

30

18

25

11001

31

19

26

11010

32

1A

27

11011

33

1B

28

11100

34

1C

29

11101

35

1D

30

11110

36

1E

31

11111

37

1F

Продолжение табл. 7

32=25

заполните

40

20

63

на бумаге →

77

3F

64=26

восьмеричные

100

40

100

и 16-ричные

144

64

127

эквиваленты,

177

7F

128=27

затем проверьте

результаты, выделив зону справа и придав ей черный цвет шрифта :-)

200

80

255

377

FF

256=28

400

100

511

777

1FF

512=29

1000

200

1000

1750

3E8

1023

1111111111

1777

3FF

1024=210

10000000000

2000

400

с   программными средствами преобразования кодов на консоли оператора). Наиболее распространенный код информации о положении – код Грея, коды задатчиков – двоично-десятичный и унитарный. Наиболее распространенные коды индикации – код Джонсона и многосегментной индикации (кодирование символов). Более сложные – например, помехозащищенные – коды в УЧПУ не используются, за исключением кода с контролем на четность/нечетность.

Двоично-десятичный код, двоично-десятичное представление чисел (BCD – Binary Coded Decimal) используется для ввода данных с кодовых задатчиков и вывода данных на десятичные индикаторы. В нем кодируется каждая десятичная цифра (обычно естественным способом 8-4-2-1). Данные для вывода должны затем преобразовываться в соответствии с типом индикаторов.

Двоичный код с битом паритета (Р) – простейший из помехозащищенных кодов – используется для контроля достоверности при передаче данных по линиям связи. Контроль возможен как на четность, так и на нечетность.

Бит контроля на нечетность вычисляется по формуле

г

 2

де – сумма по модулю 2 всех разрядов слова X.

Передатчик должен добавлять к слову кода бит паритета, а приемник анализировать четность или нечетность комбинации в соответствии с соглашением.

Код Грея3 формируется кодовыми датчиками положения.

Преобразование n-разрядного двоичного позиционного числа X = {хn-1 хn-2 …х1  х0} в  слово  кода  Грея  A = {α n-1 α n-2 …α1 α0} выполняется по несложному алгоритму:

О

2

братное преобразование (G→B) описывается выражением

или .

Унитарный код формируется различными переключателями с подвижным (обегающим) контактом, причем обычно инверсно (1110111).

Код Джонсона используется в индикаторах уровня столбчатого типа (термометрическая шкала). Это код с последовательным заполнением разрядов единицами, затем с заполнением нулями (используется только первая половина).

Составим таблицу эквивалентов десятичных чисел в специальных кодах (по приведенным выше формулам и описаниям) – табл. 8.

Таблица 8

Десятичный код

Двоично-десятичный код

Двоичный позиц. код

Код Грея

Унитарный код

Код Джонсона

0

0000 0000

0000

1

0000

000000000000000

000000000000000

1

0000 0001

0001

0

0001

000000000000001

000000000000001

2

0000 0010

0010

0

0011

000000000000010

000000000000011

3

0000 0011

0011

1

0010

000000000000100

000000000000111

4

0000 0100

0100

0

0110

000000000001000

000000000001111

5

0000 0101

0101

1

0111

000000000010000

000000000011111

6

0000 0110

0110

1

0101

000000000100000

000000000111111

7

0000 0111

0111

0

0100

000000001000000

000000001111111

8

0000 1000

1000

0

1100

000000010000000

000000011111111

9

0000 1001

1001

1

1101

000000100000000

000000111111111

10

0001 0000

1010

1

1111

000001000000000

000001111111111

11

0001 0001

1011

0

1110

000010000000000

000011111111111

12

0001 0010

1100

1

1010

000100000000000

000111111111111

13

0001 0011

1101

0

1011

001000000000000

001111111111111

14

0001 0100

1110

0

1001

010000000000000

011111111111111

15

0001 0101

1111

1

1000

100000000000000

111111111111111

99

1001 1001

Проанализируем столбец с кодами Грея. Видно, что код Грея является однопереходным – переход от слова к соседнему, предыдущему и последующему, происходит с изменением только одного бита. Это обусловливает применение именно этого кода при считывании положения многоразрядных кодовых датчиков в УЧПУ (на рис. 10 слева дорожки позиционного кода, справа – кода Грея, красная полоса – перекошенная линейка считывающих элементов). Код Грея используется также для кодирования номеров дорожек в жёстких дисках. Итак, код Грея позволяет предотвратить ложные комбинации при многоразрядном переключении (например, 153123191716). Это двоичный непозиционный однопереходный код. Код Грея называют также рефлексным, т.к. в каждом его разряде значения перебираются сначала в одной последовательности, а затем – в обратной (в столбце табл. 8 разделены линией).

0

1

1

0

1

0

1

0

1

1

0

1

1

1

0

0

1

0

0

1

0

1

1

1

1

0

1

0

0

0

1

0

0

0

0

1

1

0

0

0

1

0

0

0

1

1

1

0

0

1

1

0

0

1

0

1

1

0

1

1

1

0

0

1

1

1

1

0

1

0

Рис. 10

Вид кодового диска для такого датчика на 8 разрядов (256 секторов) приведен на рис. 11 (построен программно – GrayCode.exe).

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

Рис. 11

Следует отметить, что код Джонсона (в полном виде !) так же, как и код Грея, является двоичным непозиционным однопереходным кодом.

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