Các chuẩn truyền thông được sử dụng

Một phần của tài liệu Nghiên cứu thiết kế hệ thống định vị (Trang 46 - 52)

2.6. Khối điều khiển

2.6.2. Các chuẩn truyền thông được sử dụng

Nhằm thực hiện các tác vụ theo yêu cầu, khối điều khiển cần kết nối, giao tiếp với các khối chức năng khác, sử dụng các chuẩn truyền thông khác nhau.

a. Chuẩn giao tiếp I2C

Sử dụng chuẩn I2C trong giao tiếp với cảm biến chuyển động để cảnh báo các chuyển động bất thường của thiết bị.

Đầu năm 1980 Phillips đã phát triển một chuẩn giao tiếp nối tiếp 2 dây được gọi là I2C. I2C là tên viết tắt của cụm từ Inter-Intergrated Circuit. Đây là đường Bus giao tiếp giữa các IC với nhau. I2C mặc dù được phát triển bới Philips, nhưng nó đã được rất nhiều nhà sản xuất IC trên thế giới sử dụng. I2C trở thành một chuẩn công nghiệp cho các giao tiếp điều khiển, có thể kể ra đây một vài tên tuổi ngoài Philips

như: Texas Intrument(TI), MaximDallas, Analog Device, National Semiconductor

... Bus I2C được sử dụng làm bus giao tiếp ngoại vi cho rất nhiều loại IC khác nhau

như các loại Vi điều khiển 8051, PIC, AVR, ARM... chip nhớ như: RAM tĩnh

(Static Ram), EEPROM, bộ chuyển đổi tương tự số (ADC), số tương tự (DAC), IC

điểu khiển LCD, LED...

Cấu trúc của một bus I2C.

Chương 3. Thiết kế bộđịnh vị

Giao tiếp I2C gồm có 2 dây: Serial Data (SDA) và Serial Clock (SCL). SDA

là đường truyền dữ liệu 2 hướng, còn SCL là đường truyền xung đồng hồ để đồng bộ và chỉ theo một hướng.

Mỗi dây SDA hay SCL đều được nối với điện áp dương của nguồn cấp thông

qua điện trở. Giá trị của các điện trở này khác nhau tùy vào từng thiết bị và chuẩn giao tiếp, thường dao động trong khoảng 1 kΩ đến 4.7 kΩ.

Mỗi thiết bị kết nối với bus I2C sẽđược cấu hình với một địa chỉ duy nhất và

được cấu hình hoặc là một master hoặc là một slave, mối quan hệ master-slave tồn tại trong suốt thời gian kết nối. Mỗi thiết bị có thể hoạt đông như là thiết bị nhận dữ

liệu hay có thể vừa truyền vừa nhận.

Xung đồng hồ trên bus I2C chỉ có một hướng từ master đến slave, còn luồng dữ liệu có thể đi theo hai hướng, từ master đến slave hay ngược lại. Master giữ vai trò chủ động trong giao tiếp, tạo xung đồng hồ và quản lý địa chỉ của slave trong suốt quá trình giao tiếp.

Các bus I2C có thể hoạt động ở ba chếđộ:

- Chếđộ tiêu chuẩn (Standard mode) : tốc độ dữ liệu tối đa 100kbps. - Chếđộ nhanh (Fast mode) : tốc độ dữ liệu tối đa 400 kbps.

- Chếđộ cao tốc (High-Speed mode): tốc độ dữ liệu tối đa 3.4 Mbps. Một bus I2C có thể hoạt động ở nhiều chếđộ khác nhau:

- Một chủ một tớ (one master - one slave) - Một chủ nhiều tớ (one master - multi slave) - Nhiều chủ nhiều tớ (multi master - multi slave)

Dù ở chế độ nào, một giao tiếp I2C đều dựa vào quan hệ chủ/tớ. Giả thiết một thiết bị A muốn gửi dữ liệu đến thiết bịB, quá trình được thực hiện như sau:

- Thiết bị A (chủ) xác định đúng địa chỉ của thiết bị B (tớ), cùng với việc

xác định địa chỉ, thiết bị A sẽ quyết định việc đọc hay ghi vào thiết bị tớ. Thiết bị A gửi dữ liệu tới thiết bị B.

Khi A muốn nhận dữ liệu từ B, quá trình diễn ra như trên, chỉ khác là A sẽ

nhận dữ liệu từ B. Trong giao tiếp này, A là chủ còn B vẫn là tớ

b. Chuẩn giao tiếp SPI

Sử dụng chuẩn SPI trong giao tiếp với các bộ nhớ Flash.

SPI (Serial Peripheral Bus) giao diện Ngoại vi Nối tiếp là chuẩn truyền thông nối tiếp tốc độ cao do Motorola giới thiệu ở giữa những năm 1980. Ngày nay giao tiếp SPI được sử dụng phổ biến để giao tiếp với các vi điều khiển, EEPROM, IC thời gian thực...

SPI là kiểu truyền song công (full duplex), tại cùng một thời điểm quá trình truyền và nhận có thể xảy ra đồng thời. Đây là kiểu truyền thông dạng chủ/tớ (Master/Slave), trong đó có một thiết bị đóng vai trò là master phát xung đồng bộ điều phối quá trình tuyền thông. Các thiết bị slave không được định địa chỉmà được

xác định qua tín hiệu chọn chíp SS (Slave Slect). Đôi khi SPI còn được gọi là chuẩn giao tiếp 4 dây (Four-wire).

Các tín hiệu trong giao tiếp SPI:

- SCLK: Tín hiệu xung đồng bộ để truyền nhận dữ liệu giữa master và slave.

- MOSI (Master Output Slave Input.): Được sử dụng để truyền dữ liệu khi thiết bịđược cấu hình là master và nhận dữ liệu khi cấu hình là slave. - MISO (Master Input Slave Output): Được sử dụng để nhận dữ liệu khi

khi thiết bị được cấu hình là master và truyền dữ liệu khi cấu hình là slave.

- SS: Tín hiệu chọn slave, được tạo bởi master để lựa chọn thiết bị slave muốn thực hiện truyền nhận.

Chương 3. Thiết kế bộđịnh vị

a.Kết nối song song b.Kết nối daisy chain Hình 2.11. Các kiểu kết nối trong mạng SPI

Truyền dữ liệu với SPI: cả master và slave đều có thanh ghi dịch nối tiếp ở

bên trong. Master bắt đầu việc trao đổi dữ liệu bằng cách truyền đi một byte vào thanh ghi dịch của nó, sau đó byte dữ liệu sẽ được đưa sang slave theo đường tín hiệu MOSI, slave sẽ truyền dữ liệu nằm trong thanh ghi dịch của chính nó ngược trở

về master thông qua đường tín hiệu MISO. Bằng cách này, dữ liệu của hai thanh ghi sẽđược trao đổi với nhau. Việc đọc và ghi dữ liệu vào slave diễn ra cùng một lúc nên tốc độtrao đổi dữ liệu diễn ra rất nhanh.

So với các chuẩn giao tiếp thông dụng khác như I2C hay 1 dây, SPI là giao thức có tốc độcao hơn.

c. Chuẩn kết nối RS485

Sử dụng chuẩn kết nối RS485 trong giao tiếp với máy tính.

RS485 là chuẩn giao tiếp dạng UART (Universal Asynchronous Receiver – Transmitter) nghĩa là bộ truyền nhận nối tiếp không đồng bộ, thường được ứng dụng trong việc truyền dẫn dữ liệu nối tiếp giữa máy tính và các thiết bị ngoại vi.

Được phê duyệt vào năm 1983, bởi Hiệp hội công nghiệp điện tử (EIA) Có thể coi chuẩn RS485 là một phát triển của RS232 trong việc truyền dữ liệu nối tiếp. Những bộ chuyển đổi RS232/RS485 cho phép người dùng giao tiếp với bất kỳ thiết bị mà sử dụng liên kết nối tiếp RS232 qua RS485. Liên kết RS485 được hình thành cho việc thu nhận dữ liệu ở khoảng cách xa và điều khiển cho những

ứng dụng. Những đặc điểm nổi trội của RS485 là nó có thể hỗ trợ một mạng lên tới 32 trạm thu phát trên cùng một đường truyền, tốc độ baud có thể lên tới 115.200 cho một khoảng cách là 4000feet (1200m).

Với kiểu truyền cân bằng và các dây được xoắn lại với nhau nên khi nhiễu xảy ra ở dây này thì cũng xảy ra ở dây kia, cả hai dây cùng nhiễu giống nhau. Điều

này làm cho điện áp sai biệt giữa hai dây thay đổi không đáng kể nên tại nơi thu vẫn nhận được tín hiệu đúng nhờtính năng đặc biệt của bộthu đã loại bỏ nhiễu. Liên kết

RS485 được sử dụng rất rộng rãi trong công nghiệp, nơi mà môi trường nhiễu khá cao và sự tin tưởng vào tính ổn định của hệ thống là điều quan trọng. Bên cạnh đó

khả năng truyền thông qua khoảng cách xa ở tốc độ cao cũng rất được quan tâm,

đặc biệt là tại những nơi mà có nhiều trạm giao tiếp được trải ra trên diện rộng. Bảng 2.2. Tóm tắt các thông sốđiện quan trọng của RS-485

Thông số Điều kiện Tối thiểu Tối đa

Điện áp đầu ra hở mạch ±1.5V ±6V

Điện áp đầu ra khi có tải RL = 54Ω ±1.5V ±5V

Dòng ra ngắn mạch ±250mA

Thời gian quá độ đầu ra RL = 54Ω

CL = 54pF 30% Ta

Điện áp chếđộchung đầu ra VOC RL = 54Ω -1V 3V

Độ nhạy cảm đầu vào -7V ≤ VCM≤ 12V ±200mV

Điện áp chếđộ chung VCM -7V 12V

Chương 3. Thiết kế bộđịnh vị

Với RS-485, trạng thái logic của tín hiệu chỉ được định nghĩa trong khoảng từ±1,5V đến ±5V đối với đầu ra (bên phát) và từ ± 0,2V đến ± 5V đối với đầu vào (bên thu).

Hình 2.12. Quy định trạng thái logic của tín hiệu RS-485

Cũng như RS-422, RS-485 cho phép khoảng cách tối đa giữa trạm đầu và trạm cuối trong một đoạn mạng là 1200m, không phụ thuộc vào số trạm tham gia. Tốc độ truyền dẫn tối đa có thể lên tới 10Mbit/s, một số hệ thống gần đây có khả năng làm việc với tốc độ 12Mbit/s. Tuy nhiên có sự ràng buộc giữa tốc độ truyền dẫn tối đa và độ dài dây dẫn cho phép, tức là một mạng dài 1200m không thể làm việc với tốc độ 10MBd. Quan hệ giữa chúng phụ thuộc nhiều vào chất lượng cáp dẫn được dùng cũng như phụ thuộc vào việc đánh giá chất lượng tín hiệu.

Về bảng tin, các thông số quan trọng trong truyền nhận UART:

- Baund rate (tốc độ baund ): Khoảng thời gian dành cho 1 bit được truyền. Phải được cài đặt giống nhau ở gửi và nhận.

- Frame (khung truyền ): Quy định về số bit trong mỗi lần truyền.

- Start bit: là bit đầu tiên được truyền trong 1 Frame. Báo hiệu cho thiết bị

nhận có một gói dữ liệu sắp đc truyền đến. Bit bắt buộc.

- Data: dữ liệu cần truyền. Bit có trọng số nhỏ nhất LSB được truyền trước

sau đó đến bit MSB.

- Stop bit: là 1 hoặc các bit báo cho thiết bị rằng các bit đã được gửi xong. Thiết bị nhận sẽ tiến hành kiểm tra khung truyền nhằm đảm bảo tính

đúng đắn của dữ liệu.

Một phần của tài liệu Nghiên cứu thiết kế hệ thống định vị (Trang 46 - 52)