Thiết kế mạch điều khiển nhiệt độ không khí 6.. Thiết kế mạch điều khiển tốc độ động cơ DC 15.. Chương 1: Giao thức ghép nốin Tín hiệu n Format n Tốc độ In/Out n Lỗi và kiểm soát lỗi n B
Trang 1MÔN HỌC
Thiết kế board giao tiếp
(Interface Board Design)
By Trần Văn Hùng Mechatronics Dept
http://www.ntu.edu.vn/
Email: tvh42th@gmail.com
Tài liệu tham khảo
1 Microprofessors and microcpmputers hardware and softwware, Ronaid
J.Tocci, Frank J.Ambrosio, Prentice Hall, 2003
2 Interfacing Sensors To The Pc, Willis J.Tompkin, Jonh G.webster, Prentice
Hall, 1998
3 Microprocessor Interfacing techniques, R Zaks & A Lease, Sybex
4 Micro Processor and Interfacing, D Hall, McGraw Hill;
5 Parallel port complete, J.Axelson, LakeViewReseach
6 Mastering Serial Communication, P.W.Gofton, Sybex
Trang 2Nội dung chương trình
n Ch01: Giao thức ghép nối
n Ch02: Giao diện bus
n Ch03: Giao diện số
n Ch04: Giao diện tương tự
n Ch05: Vi điều khiển
n Ch06: Bàn phím
Các bài toán
1. Thiết kế mạch điều khiển ánh sáng theo chương trình định trước
2. Thiết kế mạch trang trí bằng đèn LED
3. Thiết kế mạch nhận dạng điểm phục vụ (thêm ít nhất 2IC)
4. Thiết kế mạch đo lượng mưa
5. Thiết kế mạch điều khiển nhiệt độ không khí
6. Thiết kế mạch điều khiển nhiệt độ dung dịch
7. Thiết kế mạch đồng hồ điện tử
8. Thiết kế mạch tính thời gian cho các môn điền kinh
9. Thiết kế bảng quang báo
10. Thiết kế mạch khoá điện tử
11. Thiết kế mạch điều khiển thiết bị bằng remote
12. Kết nối bàn phím máy tính với VXL, hiển thị ký tự lên LCD
13. Thiết kế mạch điều khiển Robot chạy theo qũy đạo (sd motor bước)
14. Thiết kế mạch điều khiển tốc độ động cơ DC
15. Thiết kế mạch điều khiển góc quay của môtơ, ổn tốc cho motor
Trang 3Chương 1: Giao thức ghép nối
n Tín hiệu
n Format
n Tốc độ In/Out
n Lỗi và kiểm soát lỗi
n Bộ lệnh và trả lời
n Kịch bản
1.1 Tín hiệu
Khi thiết kế, xây dựng ghép nối máy tính, cần
chú ý đặc biệt tới các tín hiệu theo yêu cầu:
nAnalog/Digital
nDigital: Trạng thái của sự vật, hiện tượng,…
format, mức logic,…
nAnalog: Áp/dòng, dải đo, độ phân ly, thời gian
tác động, độ chính xác, độ lặp lại,… giá trị đo
nHơn một thiết bị? => bus/mạng hay không?
=> dùng bit (trường) địa chỉ - tùy từng người
Trang 41.1 Tín hiệu (tiếp)
n Nếu dùng bus => Standard bus hay không (ISA, I2C,
USB, … hay các bus trên chuẩn RS485)?
n IDE và LPT – Mode 0 cables là bus? Tại sao?
n Khoảng cách: Xa/gần => Serial, Parallel, có liên
quan đến tốc độ
n Xa: Daisy chain cho tín hiệu hoặc nguồn cấp…
n Các tín hiệu điều khiển trạng thái
nControl signals
nStatus signals
nHandshaking sighals
1.1 Tín hiệu (tiếp)
n Daisy chain
nNối các thiết bị có khoảng cách từ vài đến vài chục m,
output của port (modul) thứ i nối với input của i+1 Đặc
biệt ở các Field Buses, có thể lên tới km
nDùng cho cả tín hiệu \\ và nối tiếp, nguồn cấp,
handshaking,…
……
Trang 51.1 Tín hiệu (tiếp)
n Tính chất vật lý của tín hiệu: là hàm của thời gian,
mức U/I
nDirection: In/Out, chú ý về chiều của dòng điện
nVoltage/Current/Optical/Wave
nChú ý Input Voltage
nMức điện áp: Mức áp? (TTL, CMOS, …)
nSingle End (đơn cực) Differrential signal:
n Single End signed:
n Tín hiệu so với một điện thế chuẩn, thường là GND (0 Volt)
n Ví dụ: Các tín hiệu trên bus (data, add, control)
n Có n tín hiệu => có ít nhất n+1 dây dẫn
n Nhạy cảm với nhiễu, tốc độ thấp hơn so với cùng chuẩn
1.1 Tín hiệu (tiếp)
n Differential Signal: Tín hiệu vi sai
n n tín hiệu => 2*n dây dẫn ở phía thu
n (Va – Vb)>100mV=> logic 1, tùy thuộc vào chuẩn được áp dụng
n (Va – Vb)<100mV=> logic 0
n Thu: Nếu có hai dây có cùng kích thước, độ dài, trở kháng,… và gần
nhau, thì mọi trên h được loại trừ => chịu được nhiễu rất tốt vì phía
thu
n Uin = k(Va – Vb) => những thành phần giống nhau được loại bỏ
n Khoảng cách lớn, tốc độ cao.
n IC: SN75176 của TI là ví dụ
n Địa chỉ ứng dụng: USB cable, Profibus,…
+
-A
C B
Đơn cực
Đơn cực
Vc = k(Va – Vb)
Trang 61.1 Tín hiệu (tiếp)
n Khả năng phối hợp tải – dòng điện ra:
n Số tải
n Chiều dòng điện Sink hay Source
n Nối chung/ghép nối bus đơn giản: 3 state, Mux, Switch
n Hot swap – hot plugible: yêu cầu Vcc và tín hiệu
n Cách ly (isolation): Relay, Opto coupler, IrLED
n Bus slot, Connecter, chuẩn, số chân (pin)
1.1 Tín hiệu (tiếp)
Buffer
LED R
5V
5V
Sourse
LED R
Sink
Hình: Sink Sourse connection
Trang 71.1 Tín hiệu (tiếp)
Hình: Open collecter
5V
1.1 Tín hiệu (tiếp)
n Connecter
nD shell: DB9, DB25,…
nDIN
n Cable
nFlat
nCoaxial,
nShield: Cho tín hiệu hoặc
nguồn cấp
nTwisted Pair: 5, 6
nVi sai
Trang 81.2 Format
n Thông tin được định dạng theo: binary/hex (ASCII)
VD: 1 số đo nhiệt độ 12 bits, dải giá trị 0 đến 9990C Khi lưu
trong CSDL, truyền tin:
n 12 bits (1,5 byte) tiết kiệm bộ nhớ, thời gian truyền
n ASCII: 3 characters: Dễ quản lý, kiểm soát sai, hiển thị
n Lượng tin lớn => khi trao đổi (với DAS, PLC, GPS,
Digi-Oscillocope,…)
nHeader: [tên (bản tin, gói), số thứ tự, ktự bắt tay, ktự đồng
bộ, số ktự/byte trong gói,…] – không mang tin
nContent: nội dung tin – mang thông tin
nTailer: Mã bắt tay kết thúc, [mã kiểm lỗi] – không mang tin
n Byte số liệu/character/frame: (truyền không đồng bộ,
RS-232, RS-485, RS-422): được định dạng thành 1
frame:
n1 start bit = 0
n5/6/7/8 data bit, D0 first
n[parity: Even/odd]
n1/1.5/2 stop bit = 1
CRC16 Data
PID
8 bits 0 – 1023 bytes 16bits
Hình: USB data packet format
Trang 91.3 Tốc độ In/Out
n Xuất phát từ: Nhu cầu trao đổi thông tin của hệ (tốc độ và
khoảng cách) => chọn kiểu truyền thích hợp, có liên quan đến
tín hiệu:
n Chỉ ra các “bottle_neck”, khắc phục được => xuất hiện các “bottle
neck” ở mức độ thấp hơn
n Phụ thuộc vào khoảng cách – tích số (k/c và tốc độ)
nNhiễu: theo công thức của Shannon bps = BW log 2 (1+P/N) Với BW:
bandwidth, P/N: tỷ số công suất tín hiệu/nhiễu
n Đường truyền: (công nghiệp) cáp đồng trục, cáp quang, wireless,…)
n Synchronous/Asynchronous
n Modulation/Demodulation…=>Tốc độ bao nhiêu kbps/kBps?
VD: LPT: SPP mode: 50…100kBps;
RS-232: 2400/4800/9600/19200/…bps
1.4 Lỗi và kiểm soát lỗi
n Khi trao đổi thông tin thường gây ra lỗi, đặc biệt
truyền xa/chuyển đổi tín hiệu Nhiều phương pháp
(hardware, Software) hỗ trợ để kiểm tra:
n [Block] check sum – BCC, phần mềm: tính tổng của
tất cả các ký tự, các byte Kết quả có thể lấy 1 byte
nVD: ROM BIOS, Ext BIOS started @ chẵn 2K, 2 ô đầu là
mã 0x55 và 0xAA, độ dài của mảng ROM là 512 byte;
checksum bù 2 sao cho tổng của tất cả các byte và mã
checksum luôn bằng zero
n CRC, ECC,… vi mạch/software – subroutine
n Parity, 1 hoặc 2 chiều
n Redundancy (RAID), thừa dư
Trang 101.5 Bộ lệnh và trả lời
n Khi ghép Intelligent Devices (Computerized devices –
mouse, KB, Printer, modem, FDC, HDC, RTU…) có
nhiều tham số, chế độ hoạt động => xây dựng bộ lệnh
(command set) và thông tin trả về (response set)
n Các câu lệnh phần mềm => bớt tín hiệu và cổng phần
cứng
n Tập hợp các yêu cầu từ CS – command set
n Tập hợp các trả lời, trạng thái –
result/response/reaction set
n Data down/up
n Symtax of command and response (structure and
grammar)
1.6 Kịch bản
n Liệt kê các trường
hợp rồi có thể áp các
phép toán xử lý tương
ứng để đảm bảo việc
ghép nối: không mất
tin, thừa tin, quẩn,
treo,…
n Thường xây dựng
theo liểu Step List
hoặc chart
n Timeout
t
Hình: Scenario Chart
ACK ACK NACK
Trang 11Ví dụ: giao thức giữa PC và VĐK trong việc trao
đổi dữ liệu (U, I, t0,…)
n Tín hiệu?
n Format?
n Tốc độ?
n Lỗi?
n Lệnh và trả lời?
n Kịch bản?
n ….
1.7 Bài tập
1 Viết chương trình giả lập RS-232
2 Viết chương trình để nhập ký tự trên máy tính rồi
hiển thị ký tự lên LCD
3 Đo giá trị nhiệt độ (độ ẩm, U, I,…) rồi hiển thị lên
máy tính (gtrị và dạng biểu đồ).