Protokol tuzilishi. Oddiy ASCII protokoli buyruq/javobga asoslangan bo‘lib, komputer va uzatkich moduli orasida aloqani ta’minlaydi. Asosiy komputer har doim buyruq qatorini ketma ketligini hosil qiladi. Aloqa ikki simvolli ASCII buyruq kodlari bilan amalga oshiriladi. Barcha analog ma’lumotlar bitta belgi, beshta raqam, o‘nlik kasr va ikkita qo‘shimcha raqamdan tashkil topgan to‘qqiz belgili qator sifatida uzatiladi. Buyruqning shakli 14.1-jadvaldagidek bo‘ladi. Ushbu buyruqni 1- manzildagi qurilma o‘qiydi va javob xabarida 275.00 qiymatini oladi.
14.1-jadval
Buyruq va javob xabarlarining qisqa shakli.
Xost – compyuter buyrug‘i
Qurilmaning javobi
Buyruqlar va javob xabarlarining maksimal uzunligi 20 ta bosma belgilardan (ASCII ga tegishli bo‘lmagan nazorat belgilari) oshmasligi kerak. Qisqa shakldagi buyruq va javob xabari odatda ko‘proq belgilardan tashkil topgan shaklda bo‘ladi. Bu javob xabari yaxlitligini ta’minlash, buyruq xabarini aks ettirish va xabarning oxirida bloklarning tekshiruvchi yig‘indisini qo‘shish uchun ishlatiladi.
Uzun formadagi buyruq xabarining boshlanishini bildiruvchi $ belgisining o‘rniga # belgi funksiyasi yordamida ishga tushiriladi. Ikki belgidan iborat checksum ixtiyoriy ravishda asosiy komputerning barcha ma’lumotlariga qo‘shilishi mumkin. Checksum bu habardagi barcha ASCII belgilarining jamlanmasi hisoblanadi.
14.2-jadval
Buyruq va javob xabarlarining uzun shakli.
Xost – computer buyrug‘i
Qurilmaning javobi
*
|
1
|
R
|
D
|
+
|
0
|
0
|
0
|
7
|
2
|
.
|
1
|
0
|
A
|
4
|
[CR]
|
Javob signali uchun ma’lumot hajmini hisoblash quyidagi jadvalda keltirilgan.
14.3-jadval
Xatolikka tekshirish uchun ma’lumot hajmini hisoblash
ASCII belgilari
|
O‘n oltılık sanoq sistemasi qiymati
|
Иккилик sanoq sistemasi qiymati
|
*
|
2A
|
0101010
|
1
|
31
|
0110001
|
R
|
52
|
1010010
|
D
|
44
|
1000100
|
+
|
2B
|
0101011
|
0
|
30
|
0110000
|
0
|
30
|
0110000
|
0
|
30
|
0110000
|
7
|
37
|
0110110
|
2
|
32
|
0110001
|
.
|
2E
|
0101110
|
1
|
31
|
0110001
|
0
|
30
|
0110000
|
SUM
|
2A4
|
|
Xatolar. Uzatgich moduli xatolik xabarini olsa, u “?” belgisi bilan javob beradi. Agar noto‘g‘ri manzil yoki buyruqlar ishlatilgan bo‘lsa, hech qanday javob bo‘lmasligi mumkin. Odatda xatolik 14.4-jadvalda ko‘rsatilgan kurinishga ega bo‘ladi.
14.4-jadval
Tipik xatolik javobi
?
|
1
|
[SP]
|
B
|
A
|
D
|
[SP]
|
C
|
H
|
E
|
C
|
K
|
S
|
U
|
M
|
[CR]
|
?
|
1
|
[SP]
|
S
|
Y
|
N
|
T
|
A
|
X
|
[SP]
|
E
|
R
|
R
|
O
|
R
|
[CR]
|
14.2. ASCII asosidagi ANSI-X3.28-2.5-A4 protokoli
ANSI-X3.28-2.5-A4 bu protokol ASCII asosidagi protokollarga misol bo‘ladi. O‘zgaruvchan tezlik motorlarini ishlab chiqaruvchilardan biri bo‘lgan Control Techniques, ushbu protokol dasturlashgan kontroller yoki komputerdan 32 tagacha dala asboblariga bog‘lanish uchun foydalaniladi. Ushbu protokolni amalga oshirishda odatda RS-485 standartini qullash afzaldir.
Umumiy yondashuv. ANSI-X3.28-2.5-A4 standarti xabar belgilarining formatini va ketma-ketligini belgilaydi. RS-485 standarti uchun qabul qilingan tipik strukturalar:
10 bitli belgilardan iborat ASCII kodlari;
Ma’lumot uzatish tezligi 300 va 19200 bit/s oralig‘ida tanlanishi mumkin;
Tarmoqda 32 tagacha qurilma ulanishi mumkin.
2 turdagi buyruq mavjud bo‘lib ular:
Komputerdan muayyan parameter haqida ma’lumot so‘rash uchun READ buyrug‘idan foydalaniladi.
PC dan maxsus parametrlarini o‘zgartirish uchun WRITE buyrug‘idan foydalaniladi.
Read (o‘qish) buyrug‘i. O‘qish buyrug‘i va ushbu buyrug‘ning javob formati 14.5-jadvalda ko‘rsatilgan.
14.5-jadval
READ so‘rovi va unga javob formati
So‘rov freymini o‘qish
EOT
(ma’lumotlarni qayta tiklash)
|
ADD
(adreslar maydoni)
|
PAR
(parametr maydoni)
|
ENQ
(so‘rovnoma)
|
1 bayt
|
4 bayt
|
3 bayt
|
1 bayt
|
Javob freymini o‘qish
STX
(ma’lumotlarning boshlanishi)
|
PAR
(parametr maydoni)
|
DATA
(ma’lumotlar maydoni )
|
ETX
(ma’lumotlarning oxiri)
|
BCC
(ma’lumotlarning tekshirish)
|
1 bayt
|
3 bayt
|
6 bayt
|
1 bayt
|
1 bayt
|
READ so‘rov xabarida ishlatiladigan ASCII belgilar:
EOT- (1 ta belgi) - bu ketma-ket link ga ulangan barcha qurilmalar ma’lumotini o‘qishni tuchtatadi (reset);
ADD- (4 ta belgi) - bu protokol 32 ta qurilmaga murojaat qilish imkonini beradi. Ma’lumotlar yaxlitligini ta’minlash uchun manzildagi har bir belgi ikki martta uzatiladi. Misol uchun drayv manzili 14 ga teng bo‘lsa, ADD 1144 bo‘ladi;
PAR (3 ta belgi) - parametrlarning ma’lumoti 0-999 oralig‘ida joylashgan;
ENQ (1 ta belgi) - xabarni ohiri, tasdiqlashni so‘rash;
CR (1 ta belgi) - xabar tugadi, keyingisiga o‘tish.
READ javob xabarida ishlatiladigan ASCII belgilar:
STX (1 ta belgi) - javobni o‘qishni boshlash uchun masterga murojat (ma’lumot boshlanishi);
PAR (3 ta belgi) - parametrlarning ma’lumoti 0-999 oralig‘ida joylashgan;
DATA (6 ta belgi) - birinchi belgi musbat yoki manfiy ishoradan iborat (bazi hollarda probeldan). Qolgan simvollar maksimal to‘rtta raqam va o‘nli kasr nuqtasidan tashkil topgan;
ETX (1 ta belgi) - bu ma’lumotlar tugaganini ko‘rsatadi;
BCC (1 ta belgi) - checksum kodi xatoni tekshirish mexanizmini tashkil qiladi. Checksum parametr raqami, ma’lumotlari va EOT ning ASCII belgilari orqali hisoblab chiqiladi. Ba’zan uskunada BCC o‘chiriladi va faqat CR qaytariladi. 14.6 – jadvalda READ buyrug‘i formati va unga javob keltirilgan.
14.6- jadval
READ buyrug‘i formati va unga javob
So‘rov freymini o‘qish
ACK
(keying PAR ni junatish )
|
yoki
|
NAK
(bir xil PAR ni junatish)
|
yoki
|
BS
(oldingi PAR ni junatish)
|
1 bayt
|
3 bayt
|
1 bayt
|
Javob freymini o‘qish
STX
(ma’lumotlarning boshlanishi)
|
PAR
(parametr maydoni)
|
DATA
(ma’lumotlar maydoni )
|
ETX
(ma’lumotlarning oxiri)
|
BCC
(ma’lumotlarning tekshirish)
|
1 bayt
|
3 bayt
|
6 bayt
|
1 bayt
|
1 bayt
|
Asosiy va yordamchi qurilmalar o‘rtasida xabarlar almashinuvi READ so‘rovi va javob kodlaridan keyin davom ettirilishi mumkin bo‘ladi va quyidagica amalga oshiriladi:
keyingi ketma-ketlikdagi parametrga ACK kodini jo‘natish orqali o‘tish;
yoki
yoki
parameterni qaytadan qabul qilish uchun NAK kodini jo‘natish.
Read so‘rov kodi (parametrlar ro‘yxatining oxirigacha) qaytadan takrorlanishi mumkin. EOT kodini jo‘natilish orqali barcha qurilmalarni boshlang‘ich holatga qaytaradi.
Write (yozish) buyrug‘i. Write buyrug‘i READ buyrug‘i kabi bir xil tavsiflanadi. Bundan tashqari, parameter haqidagi ma’lumot yoki BCC kodida xatolik mavjud bo‘lsa NAK kodi orqali harfini parameter ma’lumoti qayta so‘raladi. Agar qo‘shimcha ma’lumotlarni yozish talab qilinsa, 14.7-jadvalda keltirilgan ketma-ketlikga amal qilish kerak.
14.7- jadval
Yozish buyrug‘ining so‘rov va javob formati
Freym surovini yozilishi (PASS 1)
EOT(^D)
(ma’lumotlar linkini uchirish)
|
ADD
(addres maydoni)
|
STX (^B)
(matnning boshlanishi)
|
PAR
(parametr maydoni)
|
DATA
(ma’lumotlar maydoni )
|
ETX (^C)
(matnning tugashi)
|
BCC
(ma’lumotlarni tekshirish)
|
1 bayt
|
4 bayt
|
1 bayt
|
3 bayt
|
6 bayt
|
1 bayt
|
1 bayt
|
Freym javobini yozilishi (PASS 1)
ACK (^F)
(ma’lumotlar tiklandi )
|
yoki
|
NAK (^U)
(xato ma’lumot)
|
1 bayt
|
1 bayt
|
Freym surovini yozilishi (PASS 2)
STX (^B)
(matnning boshlanishi)
|
PAR
(parametr maydoni)
|
DATA
(ma’lumotlar maydoni )
|
ETX (^C)
(matnning tugashi)
|
BCC
(ma’lumotlarni tekshirish)
|
1 bayt
|
3 bayt
|
6 bayt
|
1 bayt
|
1 bayt
|
Freym javobini yozilishi (PASS 2)
ACK (^F)
(ma’lumotlar tiklandi )
|
yoki
|
NAK (^U)
(xato ma’lumot)
|
1 bayt
|
1 bayt
|
Do'stlaringiz bilan baham: |