Phạm vi định nghĩa của CAN trong mụ hỡnh OSi

Một phần của tài liệu (LUẬN văn THẠC sĩ) điều khiển phân tán chuyển động robot công nghiệp shephent theo quỹ đạo định trước luận văn ths cơ học 60 44 21 (Trang 53 - 58)

Hầu hết cỏc hệ thống mạng cụng nghiệp dựa trờn cơ sở của CAN thực hiện lớp vật lý theo chuẩn ISO-11898.

4.1.2. Cỏc cấu trỳc mạng và kỹ thuật truyền dẫn

CAN thực chất chỉ là chuẩn giao thức từ phần trờn của lớp vật lý cho tới hết lớp liờn kết dữ liệu, vỡ vậy khụng quy định cụ thể về chuẩn truyền dẫn cũng nhƣ mụi trƣờng truyền thụng. Trờn thực tế, cỏp đụi dõy xoắn kết hợp với chuẩn RS-485 cũng nhƣ cỏp quang đƣợc sử dụng rộng rói. Đối với cỏp đụi dõy xoắn, cấu trỳc mạng thớch hợp nhất là cấu trỳc đƣờng thẳng, mắc theo kiểu đƣờng trục/đƣờng nhỏnh (trunkline/dropline). Trong đú chiều dài đƣờng nhỏnh hạn chế dƣới 0.3m. Tốc độ truyền cú thể lựa chọn ở nhiều mức khỏc nhau, tuy nhiờn phải thống nhất và cố định trong toàn bộ mạng. Do cú sự ràng buộc giữa tốc độ truyền và chiều dài dõy dẫn trong phƣơng phỏp truy nhập bus CSMA/CA, tốc độ trƣyền tối đa là 1Mbớt/s ở khoảng cỏch 40 m và 50 Kbớt/s ở khoảng cỏch 1000m. Số trạm phụ thuộc nhiều vào cấu trỳc mạng, cỏp truyền và đặc tớnh điện học của cỏc bộ phận

thu phỏt, thụng thƣờng hạn chế ở con số 64 đối với cấu trỳc đƣờng thẳng sử dụng đụi dõy xoắn.

CAN phõn biệt hai trạng thỏi lụgic của tớn hiệu là mức trội (dominant) và mức lặn(recessive), tuy nhiờn khụng quy định giỏ trị bit nào ứng với mức tớn hiệu nào, Trong trƣờng hợp cả bớt trội và bớt lặn đƣợc phỏt đồng thời thỡ bit trội sẽ lấn ỏt tớn hiệu trờn bus cú mức trội. Trong thực tế, nếu sử dụng mạch AND thỡ mức trội phải tƣơng ứng với bớt 0 và mức lặn tƣơng ứng với bớt 1. Trạng thỏi vật lý (VD điện ỏp, ỏnh sỏng) thể hiện mức lụgic khụng đƣợc định nghĩa trong chuẩn.

4.1.3. Cơ chế giao tiếp

Đặc trƣng của CAN là phƣơng phỏp giao tiếp hƣớng đối tƣợng, trong khi hầu hết cỏc hệ thống bus trƣờng khỏc đều giao tiếp dựa vào địa chỉ cỏc trạm. Mỗi thụng tin trao đổi trong mạng đƣợc coi nhƣ một đối tƣợng, đƣợc gỏn một mó số căn cƣớc. Thụng tin đƣợc gửi trờn bus theo kiểu truyền thụng bỏo với độ dài cú thể khỏc nhau.

Cỏc thụng bỏo khụng đƣợc gửi tới một địa chỉ nhất định mà bất cứ trạm nào cũng cú thể nhận theo nhu cầu. Nội dung mỗi thụng bỏo đƣợc cỏc trạm phõn biệt qua một mó căn cƣớc (IDENTIFER). Mó căn cƣớc khụng núi lờn địa chỉ đớch của thụng bỏo mà chỉ biểu diễn ý nghĩa của dữ liệu trong thụng bỏo. Vỡ thế mỗi trạm trờn mạng cú thể tự quyết định tiếp nhận và xử lý thụng bỏo hay khụng tiếp nhận thụng bỏo qua phƣơng thức lọc thụng bỏo (Message Filtering). Cũng nhờ sử dụng phƣơng thức lọc thụng bỏo, nhiều trạm cú thể đồng thời nhận cựng một thụng bỏo và cú csc phản ứng khỏc nhau.

Một trạm cú thể yờu cầu một trạm khỏc gửi dữ liệu bằng cỏch gửi một khung REMOTE FRAME. Trạm cú khả năng cung cấp nội dung thụng tin đú sẽ gửi trả lại một khung dữ liệu DATA FRAME cú cựng mó căn cƣớc với khung yờu cầu. Bờn cạnh tớnh đơn giản, cơ chế giao tiếp hƣớng đối tƣợng ở CAN cũn mang lại tớnh linh hoạt và tớnh nhất quỏn dữ liệu của hệ thống. Một trạm CAN khụng cần biết thụng tin cấu hỡnh hệ thống (vớ dụ địa chỉ trạm), nờn việc bổ sung hay bỏ đi một trạm trong mạng khụng đũi hỏi bất cứ một sự thay đổi nào về phần cứng hay phần mềm ở cỏc trạm khỏc. Trong một mạng CAN cú thể rằng một thụng bỏo hoặc đƣợc tất cả cỏc trạm quan tõm tiếp nhận đồng thời, hoặc khụng đƣợc trạm

nào tiếp nhận. Tớnh nhất quỏn dữ liệu đƣợc đảm bảo qua cỏc phƣơng phỏp gửi đồng loạt và xử lý lỗi.

4.1.3.1. Truy nhập bus

CAN sử dụng phƣơng phỏp truy nhập mụi trƣờng CSMA/CA, tức điều khiển phõn kờnh theo từng bit. Phƣơng phỏp phõn mức ƣu tiờn truy nhập bus dựa theo tớnh cấp thiết của nội dung thụng bỏo. Mức ƣu tiờn này phải đƣợc đặt cố định, trƣớc khi hệ thống đi vào vận hành. Thực tế mó căn cƣớc khụng những mang ý nghĩa của dữ liệu trong thụng bỏo, mà cũn đồng thời đƣợc sử dụng là mức ƣu tiờn.

Bất cứ một trạm nào trong mạng cũng cú thể bắt đầu gửi thụng bỏo, mỗi khi đƣờng truyền rỗi. Mỗi bức điện đều bắt đầu bằng một bit khởi điểm và mó căn cƣớc, vỡ thế nếu hai hoặc nhiều trạm cựng đồng thời bắt đầu gửi thụng bỏo, việc xung đột trờn đƣờng truyền sẽ đƣợc phõn xử dựa theo từng bit của mó căn cƣớc. Mỗi bộ thu phỏt đều phải so sỏnh mức tớn hiệu của mỗi bit gửi đi với mức tớn hiệu quan sỏt đƣợc trờn bus. Nếu hai mức tớn hiệu cú trạng thỏi logic giống nhau thỡ trạm cú quyền phỏt bit tiếp theo, trƣờng hợp ngƣợc lại sẽ phải dừng ngay lập tức.

Trong trƣờng hợp thực hiện bit giỏ trị 0 ứng với mức trội và bit giỏ trị 1 ứng với mức lặn, bit 0 sẽ lấn ỏt. Vỡ vậy một thụng bỏo cú mó căn cƣớc nhỏ nhất sẽ đƣợc tiếp tục phỏt. Hay núi một cỏch khỏc, thụng bỏo nào cú mó căn cƣớc càng bộ thỡ mức ƣu tiờn càng cao. Trong trƣờng hợp xảy ra va chạm giữa một thụng bỏo mang dữ liệu (DATA FRAME) và một thụng bỏo yờu cầu gửi dữ liệu (REMOTE FRAME) với cựng mó căn cƣớc, thụng bỏo mang dữ liệu sẽ đƣợc ƣu tiờn. Phƣơng thức phõn xử này khụng những đảm bảo thụng tin khụng bị mất mỏt, mà cũn nõng cao hiệu quả sử dụng đƣờng truyền.

4.1.3.2. Bảo toàn dữ liệu

Nhằm đảm bảo mức an toàn tối đa trong truyền dẫn dữ liệu, mỗi trạm CAN đều sử dụng kết hợp nhiều biện phỏp để tự kiểm tra, phỏt hiện và bỏo hiệu lỗi. Cỏc biện phỏp kiểm soỏt lỗi sau đõy đƣợc ỏp dụng”

 Theo dừi mức tớn hiệu của mỗi bit truyền đi và so sỏnh với tớn hiệu nhận đƣợc trờn bus.

 Kiển soỏt qua mó CRC

 Thực hiện nhồi bit (nhồi một bớt nghịch đảo sau năm bit giống nhau)  Kiểm soỏt khung thụng bỏo

Với cỏc biện phỏp trờn, hiệu quả đạt đƣợc là:  Phỏt hiện đƣợc tất cả cỏc lỗi toàn cục

 Phỏt hiện đƣợc tất cả cỏc lỗi cục bộ tại bộ phỏt

 Phỏt hiện đƣợc tới 5 bit lỗi phõn bố ngẫu nhiờn trong một bức điện

 Phỏt hiện đƣợc cỏc lỗi đột ngột cú chiều dài nhỏ hơn 15 bit trong một thụng bỏo

 Phỏt hiện đƣợc cỏc lỗi cú số bit là chẵn

 Tỉ lệ lỗi cũn lại (xỏc suất một thụng bỏo cũn bị lỗi khụng phỏt hiện) nhỏ hơn 4.7*10-11.

Tất cả cỏc trạm nhận thụng bỏo phải kiểm tra sự nguyờn vẹn của thụng tin và xỏc nhận thụng bỏo. khi phỏt hiện ra sự sai lệch trong thụng bỏo, cỏc trạm đều cú trỏch nhiệm truyền khung lỗi. Cỏc thụng bỏo bị lỗi đú sẽ bị dừng và đƣợc tự động phỏt lại. Thời gian hồi phục từ khi phỏt hiện lỗi đến khi bắt đầu gửi thụng bỏo tiếp theo tối đa là 31 thời gian bit, nếu nhƣ khụng cú lỗi xảy ra tiếp theo.

Cỏc trạm CAN cú khả năng phõn biệt giữa nhiễu nhất thời với lỗi kộo dài, vớ dụ lỗi khi một trạm cú sự cố. Cỏc trạm bị hỏng sẽ đƣợc tự động tỏch ra khỏi mạng (về mặt logic).

4.1.3.3. Mó hoỏ bit

Trƣớc khi đƣợc chuyển đổi thành tớn hiệu trờn đƣờng truyền, CAN sử dụng phƣơng phỏp nhồi bit (bit stuffing). Dóy bit đầu vào cần nhồi bao gồm bit khởi đầu khung, ụ phõn xử, ụ điều khiển, dữ liệu và dóy CRC. Khi năm bit liờn tục giống nhau, bộ phỏt sẽ tự động bổ sung một bit nghịch đảo vào cuối. Bờn nhận sẽ phỏt hiện ra bit đƣợc nhồi và tỏi tạo thụng tin ban đầu. Việc nhồi bit khụng đƣợc thực hiện với phần cũn lại của khung dữ liệu và khung yờu cầu dữ liệu, cũng nhƣ đối với cỏc khung lỗi và khung quỏ tải. Cuối cựng dóy bit đƣợc mó hoỏ theo phƣơng phỏp Non-return-to-zero(NRZ), cú nghĩa là trong suốt một chu kỳ bit,

4.2. VI XỬ Lí ATMEL AT89C52CC02

Vi xử lý AT98C51CC02 của hóng Atmel thuộc dũng vi xử lý 8951 vốn đó rất quen thuộc với cỏc kỹ sƣ, thậm chớ với cả cỏc sinh viờn Việt Nam. Đú là một trong những lý do quan trọng để tỏc giả triển khai CAN trờn phần cứng này. Vi xử lý AT98C51CC02 hỗ trợ toàn bộ cỏc lệnh của dũng vi xử lý 8051 và trờn chớp cũn cú phần cứng hỗ trợ truyền thụng theo chuẩn CAN.

4.2.1. Cỏc tớnh năng chớnh

Ngoài bộ nhớ flash và lừi vi xử lý 8 bit x51, cỏc bộ phận ngoại vi nhƣ UART, timer hoàn toàn tƣơng đƣơng với dũng vi xử lý 8952, vi xử lý AT89C51CC02 cũn cú thờm cỏc tớnh năng:

 2 KB flash cho Boot Loader

 2 KB EEPROM, dành cho lƣu tham số hệ thống (trong quỏ trỡnh chạy)

 2 Mảng lụgic lập trỡnh đƣợc (PCA) 16bit cú thể sử dụng nhƣ cỏc bộ PWM hoặc timer, tạo xung tần số cao...

 21bit Watchdog Timer

 10 bit ADC với 8 đầu vào dồn kờnh.  CAN controller.

Với tuỳ chọn UART Boot Loader, chỳng ta cú thể lập trỡnh cho chip thụng qua cổng giao tiếp nối tiếp, với chip vẫn nằm trờn mạch mà khụng cần phải thỏo chip ra đƣa vào bộ nạp. Do khụng yờu cầu phải cú bộ nạp chuyờn dụng, đắt tiền nờn việc phỏt triển chƣơng trỡnh và thiết kế mạch in cho chip này rất thuận lợi. Hơn thế, vi xử lý này đƣợc tớch hợp bộ điều khiển truyền thụng CAN (CAN controller) trờn chip. Việc tớch hợp này khụng chỉ hỗ trợ tốc độ truyền thụng và xử lý cao, bờn cạnh đú CAN controller này cũn cung cấp cả cỏc bộ nhớ đệm và hỗ trợ một số tớnh năng trả lời tự động của CAN.

Một phần của tài liệu (LUẬN văn THẠC sĩ) điều khiển phân tán chuyển động robot công nghiệp shephent theo quỹ đạo định trước luận văn ths cơ học 60 44 21 (Trang 53 - 58)

Tải bản đầy đủ (PDF)

(83 trang)