MÔ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:
[email protected]
Tài liệu tham khảo
1.
2.
3.
4.
5.
6.
Microprofessors and microcpmputers hardware and softwware, Ronaid
J.Tocci, Frank J.Ambrosio, Prentice Hall, 2003
Interfacing Sensors To The Pc, Willis J.Tompkin, Jonh G.webster, Prentice
Hall, 1998
Microprocessor Interfacing techniques, R. Zaks & A. Lease, Sybex
Micro Processor and Interfacing, D. Hall, McGraw Hill;
Parallel port complete, J.Axelson, LakeViewReseach
Mastering Serial Communication, P.W.Gofton, Sybex
Nội dung chương trình
Ch01: Giao thức ghép nối
Ch02: Giao diện bus
Ch03: Giao diện số
Ch04: Giao diện tương tự
Ch05: Vi điều khiển
Ch06: Bàn phím
Các bài toán
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Chế tạo mạch vị trí điểm phục vụ (thêm ít nhất 2IC)
Chế tạo mạch đo lượng mưa
Chế tạo mạch điều khiển nhiệt độ không khí
Chế tạo mạch điều khiển nhiệt độ dung dịch
Chế tạo mạch đồng hồ điện tử
Chế tạo bảng quang báo (LED matrix)
Chế tạo mạch khoá điện tử
Chế tạo mạch điều khiển thiết bị bằng remote
Kết nối bàn phím máy tính với VĐK, hiển thị ký tự lên LCD
Chế tạo mạch điều khiển Robot chạy theo qũy đạo (sd motor bước)
Chế tạo mạch điều khiển tốc độ động cơ DC
Chế tạo mạch điều khiển góc quay của môtơ, ổn tốc cho motor.
Chế tạo mạch điều khiển máy trộn dung dịch tự động (cân điện tử)
Thiết kế mạch điều khiển tốc độ động cơ AC
Biến đổi từ 220VAC thành hai dải -24=>0, 0=>+24 dòng ≥2A
Bộ nạp ắc quy (3 đầu ra, kiểm soát U, I)
Chương 1: Giao thức ghép nối
Tín hiệu
Format
Tốc độ In/Out
Lỗi và kiểm soát lỗi
Bộ lệnh và trả lời
Kịch bản
Mỗi trạm gồm: độ ẩm, t, v
St-01
St-02
St-03
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:
Analog/Digital
Digital:
Trạng thái của sự vật, hiện tượng,…
format, mức logic,…
Analog:
Á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
Hơ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
1.1 Tín hiệu (tiếp)
Nếu dùng bus => Standard bus hay không (ISA, I2C,
USB, … hay các bus trên chuẩn RS485)?
IDE và LPT – Mode 0 cables là bus? Tại sao?
Khoảng cách: Xa/gần => Serial, Parallel, có liên
quan đến tốc độ
Xa: Daisy chain cho tín hiệu hoặc nguồn cấp…
Các tín hiệu điều khiển trạng thái
Control signals
Status signals
Handshaking sighals
1.1 Tín hiệu (tiếp)
Daisy chain
Nố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
Dùng cho cả tín hiệu \\ và nối tiếp, nguồn cấp,
handshaking,…
……
CPU
IO_0
IO_1
……
IO_n
1.1 Tín hiệu (tiếp)
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
Direction: In/Out, chú ý về chiều của dòng điện
Voltage/Current/Optical/Wave
Chú ý Input Voltage
Mức điện áp: Mức áp? (TTL, CMOS, …)
Single End (đơn cực) Differrential signal:
Single End signed:
Tín hiệu so với một điện thế chuẩn, thường là GND (0 Volt)
Ví dụ: Các tín hiệu trên bus (data, add, control)
Có n tín hiệu => có ít nhất n+1 dây dẫ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)
Differential Signal: Tín hiệu vi sai
n tín hiệu => 2*n dây dẫn ở phía thu
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
(Va – Vb)>100mV=> logic 1, tùy thuộc vào chuẩn được áp dụng
(Va – Vb)<100mV=> logic 0
Uin = k(Va – Vb) => những thành phần giống nhau được loại bỏ
Khoảng cách lớn, tốc độ cao.
IC: SN75176 của TI là ví dụ
Địa chỉ ứng dụng: USB cable, Profibus,…
Đơn cực
A
B
Đơn cực
+
Vc = k(Va – Vb)
C
1.1 Tín hiệu (tiếp)
Khả năng phối hợp tải – dòng điện ra:
Số tải
Chiều dòng điện Sink hay Source
Nối chung/ghép nối bus đơn giản: 3 state, Mux, Switch.
Hot swap – hot plugible: yêu cầu Vcc và tín hiệu
Cách ly (isolation): Relay, Opto coupler, IrLED
Bus slot, Connecter, chuẩn, số chân (pin)
1.1 Tín hiệu (tiếp)
5V
Sourse
MCU
Outport
Buffer
R
LED
Sink
R
Hình: Sink Sourse connection
LED
5V
1.1 Tín hiệu (tiếp)
5V
Hình: Open collecter
1.1 Tín hiệu (tiếp)
Connecter
D shell: DB9, DB25,…
DIN
Cable
Flat
Coaxial,
Shield: Cho tín hiệu hoặc
nguồn cấp
Twisted Pair: 5, 6
Vi sai
Optical Fiber
Hình: Connecter
1.2 Format
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:
12 bits (1,5 byte) tiết kiệm bộ nhớ, thời gian truyền
ASCII: 3 characters: Dễ quản lý, kiểm soát sai, hiển thị
Lượng tin lớn => khi trao đổi (với DAS, PLC, GPS,
Digi-Oscillocope,…)
Header: [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.
Content: nội dung tin – mang thông tin
Tailer: Mã bắt tay kết thúc, [mã kiểm lỗi] – không mang tin
1.2 Format (tiếp)
8 bits
0 – 1023 bytes
16bits
PID
Data
CRC16
Hình: USB data packet format
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:
1 start bit = 0
5/6/7/8 data bit, D0 first
[parity: Even/odd]
1/1.5/2 stop bit = 1
1.3 Tốc độ In/Out
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:
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
Phụ thuộc vào khoảng cách – tích số (k/c và tốc độ)
Nhiễu: theo công thức của Shannon bps = BW log2(1+P/N). Với BW:
bandwidth, P/N: tỷ số công suất tín hiệu/nhiễu
Đường truyền: (công nghiệp) cáp đồng trục, cáp quang, wireless,…)
Synchronous/Asynchronous
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
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:
[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
VD: 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
CRC, ECC,… vi mạch/software – subroutine
Parity, 1 hoặc 2 chiều
Redundancy (RAID), thừa dư
1.5 Bộ lệnh và trả lời
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)
Các câu lệnh phần mềm => bớt tín hiệu và cổng phần
cứng
Tập hợp các yêu cầu từ CS – command set
Tập hợp các trả lời, trạng thái –
result/response/reaction set
Data down/up
Symtax of command and response (structure and
grammar)
1.6 Kịch bả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,…
Thường xây dựng
theo liểu Step List
hoặc chart
Timeout
…
Slave
Master
ACK
ACK
NACK
t
Hình: Scenario Chart