HARDWARE CỦA SOCCER ROBOT

Chia sẻ: Nguyen Tan Vinh | Ngày: | Loại File: DOC | Số trang:18

0
71
lượt xem
24
download

HARDWARE CỦA SOCCER ROBOT

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Soccer robot bao gồm CPU MR188 board, board điều khiển động cơ, RF(vô tuyến) module.Để tăng sự hoạt động của robot, bộ điều khiển CPLD được sử dụng để điều khiển độ rộng xung PWM động cơ và các tín hiệu encoder.CPLD là phương tiện trợ giúp cho việc lập trình điều khiển.

Chủ đề:
Lưu

Nội dung Text: HARDWARE CỦA SOCCER ROBOT

  1. HARDWARE CỦA SOCCER ROBOT
  2. 2.1 Giới thiệu chung về hardware của soccer robot: Soccer robot bao gồm CPU MR188 board, board đi ều khi ển động c ơ, RF(vô tuyến) module.Để tăng sự hoạt động của robot, bộ điều khiển CPLD được sử d ụng đ ể đi ều khiển độ rộng xung PWM động cơ và các tín hiệu encoder.CPLD là ph ương ti ện tr ợ giúp cho việc lập trình điều khiển. Hardware của robot cụ thể như sau: • CPU:Kích thước 72mmx46mm(MR188A1 Board) • RF và Motor Control Board:71.5mmx72.5mm • DC motor: -Hộp số: 7.5:1 -Tốc độ tối đa:1.5m/s. • Encoder: 512 pulse/vòng • Pin: 7.2V,450mAh • RF Module: BiM-418 hoặc BiM-433 • Driver động cơ DC:L298 • DC motor controller: CY37128(CPLD) 2.2 RF Module: 2.2.1 RF Module là gì? RF (Radio Frequency) module là thiết bị sử dụng đề truyền thông sóng vô tuyến. Trong trường hợp này tần số sóng vô tuyến đề cập đến sóng đi ện thông dụng và không ch ỉ là tần số vô tuyến phát thanh. RF module có thể được phân loại theo tần số, phương pháp điều biến (sự biến đổi của tín hiệu dạng số sang dạng tương tự, thường dùng trong truyền tín hiệu qua các hệ thống viễn thông), dữ liệu, cường độ ngõ ra… 2.2.2 Charisma RF Board: Mạch giao tiếp vô tuyến Charisma chuyển đổi dữ li ệu nối ti ếp RS232 sang d ữ li ệu RF và ngược lại. Charisma Board có thể dễ dàng kết n ối v ới các thi ết b ị s ử d ụng c ổng RS232. Charisma được thiết kế sử dụng RadioMetrix BiM,TX2 hay RX2
  3. modules. PC và PC cũng có thể giao tiếp được với nhau nếu cả 2 PC đều kết nối với Charisma board. 2.3 Radiometrix BiM-UHF: 2.3.1 Định nghĩa và ứng dụng Radiometrix: BiM-418-F và BiM-433F là những module vô tuyến UHF thu nhỏ có khả năng truyền dữ liệu đơn công với tốc độ lên đến 40Kbit/s và khoảng cách truyền lên đến 30m(trong nhà) và 120m(ngoài trời). Tần số Tốc độ Khoảng cách Nguồn Anten BiM-418-F 418MHz 40K bps 30-120m 4.5V-5.5V 16.5cm BiM-433-F 433.92MHz 40H bps 30-120m 4.5V-5.5V 16.5cm Module này tích hợp bộ phát UHF FM năng lượng thấp, bộ thu đổi tần số phù h ợp với phục hồi dữ liệu và những mạch chuyển đổi TX/RX đ ể cung c ấp m ột gi ải pháp kinh tế trong thực hiện việc liên kết dữ liệu bằng sóng vô tuyến tầm ngắn theo 2 chiều. Tốc độ dữ liệu cao (40kbit/s) và sự chuyển đổi TX/RX nhanh(
  4. 2.3.2 Mô tả các chân : Hình 2.1: Mô tả các chân của Radiometrix. Pin13:Đây là ngõ ra của điều chế FM. Nó có DC bias hiện hành khoảng xấp xỉ 1.5V và có thể được sử dụng để lái những bộ gi ải mã dữ li ệu t ương t ự nh ư là nh ững b ộ giải mã modem. Trở kháng ngõ ra là 10kOhm. Ngõ ra ch ỉ là d ữ li ệu th ực cho BiM-418 và đảo ngược lại với BiM-433. Pin14 (TXD): Ngõ vào này luôn
  5. Hình 2.2: Sơ đồ bố trí của mạch giao tiếp RF. 2.4.2 Cài đặt module: Module RF là các module giao tiếp 2 chiều.Để chọn chế độ truyền và nh ận có th ể sử dụng phương pháp phần mềm và phần cứng.Phương pháp phần mềm sử dụng chân RTS của cổng RS232.Phương pháp phần cứng sử dụng khối jumper như sau: Cài đặt jumper Chế độ 1,2 Nhận 2,3 Phương pháp phần mềm (truyền và nhận) Empty Truyền, phát
  6. Nếu sử dụng phương pháp phần mềm thì dùng cáp nối tiếp 4 dây kết nối vào JP3 thay cho JP2. JP4 ANT BIM418(or 433) DC 9V JP1 POWER DC 5V JP7 • Kết nối một đầu của cáp nối tiếp (đầu nối có header) vào JP2.Đầu còn lại(đầu nối DB9) gắn vào cổng COM của máy tính. • Ba chân của JP4 kết nối như sau để RF board hoạt động theo chế độ chỉ truyền phát: • Cả 3 chân của JP4 không nối với nhau(JP4 hở).
  7. • Chân 1 và 2 của JP4 nối với nhau và chân 3 để hở. • Gắn anten vào cực ANT. • Đặt RF module(BiM-418-F hay BiM-433-F) vào IC socket • Nối adapter 6V-12V vào J1 hoặc DC 5V vào JP7;pin 9V vào JP1. 2.4.3 Những yêu cầu cơ bản mà dữ liệu truyền nối tiếp phải thỏa mãn: • T(thời gian của độ rộng xung):25us
  8. - Data bytes:Chuỗi byte 00H hay FFH sẽ bị lỗi vì tỉ lệ mark/space không phù hợp. Các giá trị thích hợp có thể là 17h, 1Bh, 1Dh, 1Eh, …4Eh, 53h…, 87h, 8Bh… - CRC hay Checksum:Tùy ý. 2.5 MR188A1 board: 2.5.1 Giới thiệu về vi điều khiển AM188ES: AM188ES là sự phát triển của họ vi điều khiển AMD theo tiêu chuẩn công nghi ệp x86. Vi điều khiển AM188ES có khả năng hoạt động và sự tích hợp cao hơn dòng vi xử lý 80C188 vì những lí do sau : + Tối thiểu hoá chi phí của toàn bộ hệ thống:Những thi ết b ị ngo ại vi m ới và h ệ thống tương thích logic tích hợp trong vi đi ều khi ển AM188ES gi ảm chi phí trong các thi ết kế so với vi xử lý 80C188. + Tăng cường sự hoạt động: Vi điều khiển AM188ES tăng cường cho ho ạt đ ộng của hệ thống 80C188 và bus địa chỉ đơn thành phần tạo ra sự truy xu ất b ộ nh ớ nhanh và không cần bộ đệm. + Tăng cường các chức năng: Những thiết bị ngoại vi mới và được tăng cường trong AM188ES bao gồm 2 cổng nối tiếp không đồng b ộ, 32PIOs(chân I/O), watchdog timer, những chân vào ngắt, bộ điều rộng xung, bộ điều khiển PSRAM… 2.5.2 Tính chất đặc trưng của vi điều khiển AM188ES: + Tần số hoạt động 20, 25, 33, 40 MHz. + Vùng địa chỉ bộ nhớ: 1MB + 64KB vùng I/O. + Vcc cho tần số đến 33MHz là 5V +/- 10%. + Vcc cho tần số trên 33MHz là 5V +/- 5%. + Hai cổng nối tiếp không đồng bộ cho phép việc truyền dữ liệu song công hoàn toàn 7 bit, 8 bit hay 9bit. + 32 chân I/O lập trình được. + Watchdog timer.
  9. + Chế độ điều chế độ rộng xung. + 8 bit hoặc 16 bit bộ nhớ + 2 kênh DMA độc lập. + Các ngắt điều khiển lập trình được bao gồm:8 ngắt ngoài và 8 ngắt trong. + Bộ nhớ lập trình được và logic chọn chip ngoại vi. + 3 timer lập trình 16 bit. + Trạng thái tĩnh lập trình được. + Bộ chia xung đồng hồ tiếp kiệm năng lượng. 2.5.3 Sơ đồ khối, sơ đồ chân và chức năng các chân của vi điều khiển AM188ES: Hình 2.3: Sơ đồ khối của vi điều khiển AM188ES.
  10. Hình 2.4: Chức năng các chân của vi điều khiển AM188ES. + Xung đồng hồ(Clocks): đưa vào các chân X1; X2; CLKOUTA; CLKOUTB. + Các bus địa chỉ và bus địa chỉ/dữ liệu: Các chân A19-A0; AD15-AD0; S6/ LOCK / CLKDIV 2 ; UZI + Điều khiển bus + Điều khiển timer + Điều khiển DMA + Điều khiển bộ nhớ và ngoại vi + Điều khiển reset và các chế độ ngắt + Điều khiển nhập/xuất điều khiển được + Điều khiển cổng nối tiếp bất đồng bộ
  11. 2.5.4 Lập trình cho vi điều khiển: AMD188ES có tổng cộng 14 thanh ghi, chúng được chia theo các nhóm chức năng như sau: + Các thanh ghi thông dụng: -8 thanh ghi 16 bit có chức năng thông dụng có thể sử dụng cho những toán hạng đại số và logic. - Thanh ghi trong số này (AX, BX, CX, và DX) có thể được sử d ụng nh ư là các thanh ghi 16 bit hoặc chia thành các cặp thanh ghi 8 bit (AH, AL, BH, BL, CH, CL, DH và DL). - Các thanh ghi chỉ số đến (DI) và chỉ số nguồn (SI) được sử dụng cho việc di chuyển dữ liệu và những chỉ dẫn cho chuỗi. - Các thanh ghi Base Pointer (BP) và Stack-Pointer (SP) được sử dụng cho việc phân đoạn các stack và trỏ tương ứng đến cuối và đầu của stack. - Các thanh ghi nền và chỉ số: 4 thanh ghi thông dụng (BP, DX, DI và SI) cũng có thể sử dụng dể xác định các địa chỉ offset của các toán hạng trong bộ nhớ.Những thanh ghi có thể mang các địa chỉ nền hay các chỉ số trong những vùng riêng biệt khi phân đoạn.Những mode địa chỉ chọn những thanh ghi cụ thể cho các toán hạng và các phép tính toán địa chỉ. - Thanh ghi Stack Pointer: Tất cả các thao tác trên stack (POP, POPA, POPF, PUSHA, PUSHF) đều sử dụng stack pointer. Thanh ghi Stack Pointer luôn được offset từ thanh ghi Stack Segment (SS). - Các thanh ghi phân đoạn (Segment Registers): 4 thanh ghi 16 bit dùng cho mục đích đặc bi ệt (CS, DS, ES, SS) ch ọn nh ững s ự phân đo ạn của bộ nhớ có địa chỉ tức thời cho đoạn mã (CS), dữ li ệu (DS và ES), và stack b ộ nh ớ (SS). - Các thanh ghi trạng thái và điều khiển: Hai thanh ghi đặc biệt 16 bit ghi nhận hay đi ều chỉnh nh ững giai đo ạn c ủa tr ạng thái x ử lý của vi điều khiển-Thanh ghi chỉ dẫn (Instruction Register-IP) l ưu tr ữ đ ịa ch ỉ offset các chỉ dẫn liên tiếp theo sau để được thực thi và các cờ trạng thái xử ly (Processor Status Flags) lưu trữ các bit cờ trạng thái và điều khiển. Thanh ghi các cờ trạng thái xử lý:
  12. 2.5.5 Tổ chức bộ nhớ: Bộ nhớ được tổ chức theo thành các tập hợp của các đoạn. Mỗi đoạn là dãy liền kề của 64K của các byte 8 bit bộ nhớ được định địa chỉ sử dụng địa chỉ có 2 thành phần gồm giá trị đoạn 16 bit và giá trị offset 16 bit. Offset là số lượng byte bắt đầu ở mỗi đoạn đến dữ liệu hay những chỉ thị đang được xử lý. Bộ xử lý tạo thành địa chỉ vật lý của đích đến bằng việc lấy các đoạn địa chỉ, dịch nó sang trái 4 bit và thêm nó vào 16 bit offset. K ết qu ả sẽ là đ ịa ch ỉ 20 bit c ủa d ữ li ệu đích hay chỉ thị.Điều này cho phép kích thước địa chỉ vật lý là 1Mb. Chẳng hạn nếu đoạn thanh ghi được nạp vào giá trị 12A4H và offset là 0022H.Kết quả là địa chỉ 12A62H. Các giá trị đoạn 16 bit được lưu trữ vào 1 trong 4 thanh ghi đoạn bên trong (CS,DS,ES, và SS). Để có thêm vùng bộ nhớ vi điều khiển AM188ES cung cấp vùng không gian I/O 64K. Vùng không gian I/O: Bao gồm các cổng 64K 8 bit hay 32K 16 bit. Các chỉ thị IN,OUT định địa chỉ vùng không gian I/O với địa chỉ port 8 bit được định rõ trong chỉ thị hay địa chỉ port 16 bit trong thanh ghi DX. Các địa chỉ port 8 bit là phần mở rộng zero để A15-A8 là mức thấp.
  13. 2.5.6 Đơn vị điều khiển ngắt: Vi điều khiển Am188ES có thể nhận các yêu c ầu ngắt t ừ nhi ều ngu ồn khác nhau ở bên trong lẫn bên ngoài. Có 8 nguồn ngắt ngoài -7 chân ngắt (INT6-INT0) có che m ặt n ạ và 1 chân ngắt không che mặt na (NMI). Có 8 nguồn ngắt bên trong bao g ồm:3 timer, 2 kênh DMA, 2 cổng nối tiếp bất đồng bộ và watchdog timer NMI. Các dạng ngắt: 2.5.7 Đơn vị điều khiển bộ định thì (timer): AM188ES có 3 timer 16 bit có thể lập trình đ ược .Timer 0 và timer 1 r ất đa năng và mỗi timer được kết nối với 2 chân bên ngoài(m ột cho input và m ột cho output).Hai timer này có thể dùng để đếm,ịnh thì cho các sự kiện bên ngoài ,ngoài ra chúng còn t ạo ra các dạng sóng không theo chu kì và có độ rộng xung thay đổi. Timer 2 không kết nối với chân bên ngoài ,nó được sử dụng cho nh ững ứng d ụng mã hoá thời gian thực hay delay những khoảng thời gian,nó cũng có th ể dùng cho nh ững yêu cầu DMA.
  14. Các timer được điều khiển bởi 11 thanh ghi 16 bit nằm trong khối điều khiển ngoại vi: Các thanh ghi timer count lưu trữ giá trị hiện tại của timer. Vi điều khiển sẽ tăng (giảm) giá trị của các thanh ghi này mỗi khi có một sự kiện diễn ra . Mỗi timer có một thanh ghi đếm giá trị tối đa (Maximum Count Compare) xác định giá trị tối đa cho timer. Khi timer đếm đến giá trị tối đa ,nó sẽ tự động reset về 0 trong cùng chu kì xung clock. Thêm vào đó,timer 0 và timer 1 còn có thanh ghi đ ếm t ối đa thứ 2. Sử dụng hai thanh ghi giá trị tối đa sẽ làm cho timer thay đ ổi l ần l ượt gi ữa 2 giá tr ị tối đa này. 2.5.8 Bộ điều khiển DMA: Sự truy cập bộ nhớ trực tiếp (Direct Memory Access-DMA) cho phép sự trao đ ổi d ữ liệu giữa bộ nhớ và ngoại vi mà không cần đến CPU. Đ ơn v ị DMA trong vi đi ều khi ển AM188ES cung cấp 2 kênh DMA tốc độ cao. Những sự chuyển đ ổi d ữ li ệu có th ể di ễn ra giữa bộ nhớ và vùng I/O hay là trong cùng một không gian (chẳng hạn từ bộ nhớ -bộ nhớ hay I/O –I/O). Mỗi kênh nhận yêu cầu DMA từ một trong 3 nguồn sau:chân yêu cầu kênh DMA (DRQ1-DRQ0), timer 2 hay cổng nối tiếp bất đồng bộ. 6 thanh ghi trong khối điều khiển ngoại vi sẽ xác định sự ho ạt đ ộng c ủa các kênh DMA. Các thanh ghi DMA bao gồm địa chỉ nguồn 20bit (2 thanh ghi), đ ịa ch ỉ đích 20bit (2 thanh ghi), thanh ghi đếm sự chuyển giao (số lượng sụ chuyển giao DMA đ ược th ực thi) và thanh ghi điều khiển 16 bit (điều khiển sự hoạt động của các kênh DMA).
  15. 2.5.9 Các cổng nối tiếp bất đồng bộ: Vi điều khiển AM188ES cung cấp 2 cổng nối tiếp bất đồng bộ độc lập. Những cổng này truyền song công, chuyển giao dữ liệu 2 chiều theo các tiêu chuẩn giao ti ếp công nghiệp. Những đặc điểm của cổng nối tiếp bất đồng bộ: - Hoạt động song công - Sự chuyển giao dữ liệu 7 bit,8 bit,9 bit. - Parity chẵn,lẻ hoặc không có parity. - Một bit dừng. - DMA đến hay bắt đầu ở cổng nối tiếp. - Các ngắt có mặt nạ riêng biệt cho mỗi cổng. - Tốc độ baud tối đa bằng 1/16 xung clock của CPU. - Bộ đệm đôi cho truyền và nhận . Mỗi cổng nối tiếp được cung cấp 2 chân dữ liệu (RXD0/RXD1 và
  16. TXD0/TXD1) và hai tín hiệu điều khiển đường truyền.Những tín hiệu điều khiển này được đặt cấu hình bởi phần mềm để cung cấp những protocol khác nhau (DCE/DTE protocol; CTS/RTR protocol). Các cổng nối tiếp được lập trình thông qua 10 thanh ghi ngoại vi 16 bit. 2.6 MR188 board: 2.6.1 Các linh kiện và sơ đồ của board: - Kích thước PCB:72.4mmx45.7mm(4 lớp). - CPU:AMD188ES-40MHz - ROM:AT29C010A(Bộ nhớ 1M bit Flash). - RAM:621024 hay 681000( 1M bit SRAM). - Push Switch. - LEDs - Connector nguồn 5V ,RS232(Max232).
  17. Sơ đồ schematic: 2.6.2 Các đoạn code điều khiển MR188A1 Board: MAIN.C: Chương trình chính cho Soccer robot. CY37128.H:Header file cho bộ điều khiển động cơ CPLD. INIT.H: Header file cho LED và các công tắc. MOTOR2.H: Header file cho việc điều khiển PID các động cơ và encoder. NEW_PID.H: Header file cho việc điều khiển PID và các ngắt. NEW_PID.C: Chương trình mẫu cho RF PID điều khiển động cơ.
  18. 2.6.3 Các hàm điều khiển: 2.6.3.1 Các hàm motor và encoder: 2.6.3.2 Các hàm cho cổng nối tiếp: Tên hàm Chức năng void init_serial (int) Khởi động cổng nối tiếp void rcom_clear_buffer (void) Xóa bộ đệm nhận byte rcom (void) Nhận vào 1 byte byte rcom_nowait (void) Hàm không chờ nhận 1 byte void rcom_hex (byte) Nhận 1 byte(dạng hex). void tcom (byte) Gởi đi 1 byte. void tcom_string (byte*) Gởi đi một chuỗi void tcom_printf (char*form…) Gởi đi một chuỗi dạng printf.
Đồng bộ tài khoản