Tìm hiểu kit ez430 rf2500 và ứng dụng kit này vào thiết kế xe điều khiển từ xa bằng sóng rf

29 0 0
Tìm hiểu kit ez430 rf2500 và ứng dụng kit này vào thiết kế xe điều khiển từ xa bằng sóng rf

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

MỤC LỤC MỤC LỤC LỜI MỞ ĐẦU CHƯƠNG 1: TỔNG QUAN 1.1 Đặt vấn đề 1.2 Phạm vi đề tài 1.3 Hướng giải vấn đề CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Giới thiệu sơ lược MSP430 2.2 Kit eZ430 RF2500 2.2.1 Giới thiệu Kit eZ430 RF2500 2.2.2 Thành phần Kit eZ430 RF2500 TI 2.2.3 Chức chân board eZ430-RF2500 2.2.4 Đặc điểm MSP430F2274 kit eZ430-RF2500 10 2.2.5 Đặc điểm CC2500 kit eZ430-RF2500 11 CHƯƠNG 3: NỘI DUNG VÀ KẾT QUẢ NGHIÊN CỨU 14 3.1 Sơ đồ mạch chi tiết kit eZ430-RF2500 14 3.2 Sơ đồ khối mạch thiết kế 17 3.2.1 Mạch điều khiển Motor sử dụng cầu H 17 3.2.2 Các phím điều khiển 18 3.3 Lưu đồ giải thuật 19 3.4 Nguyên tắc truyền nhận liệu MSP430F2274 với CC2500 21 3.5 Khung liệu truyền nhận 21 3.6 Chương trình 22 KẾT LUẬN 28 TÀI LIỆU THAM KHẢO 29 21 Trang LỜI MỞ ĐẦU MSP430 họ vi điều khiển cấu trúc RISC 16-bit sản xuất công ty Texas Instruments MSP chữ viết tắt “MIXED SIGNAL MICROCONTROLLER”, dòng vi điều khiển siêu tiết kiệm lượng, sử dụng nguồn thấp, khoảng từ 1.8V – 3.6V MSP430 kết hợp đặc tính CPU đại tích hợp sẵn module ngoại vi Kit eZ430-RF2500 sản phẩm ứng dụng MSP430, tích hợp thêm phận truyền nhận liệu không dây hoạt động vùng tần số 2.4GHz phận cảm biến nhiệt Đây họ vi điều khiển gia nhập vào thị trường vi điều khiển nước ta, nên chưa có nhiều đề tài nghiên cứu triển khai ứng dụng Bài báo cáo vi xử lý trình bày Kit eZ430-RF2500 ứng dụng Kit vào thiết kế xe điều khiển từ xa Trong q trình tìm hiểu thiết kế khơng tránh khỏi thiếu sót, mong nhận ý kiến đóng góp thầy bạn Xin gửi lời cảm ơn chân thành đến thầy Trần Hữu Danh hướng dẫn để nhóm chúng em hồn thành tốt đề tài vi xử lý Trang CHƯƠNG 1: TỔNG QUAN 1.1 Đặt vấn đề Yêu cầu đặt ra: tìm hiểu Kit eZ430-RF2500 TI sử dụng truyền nhận khơng dây tích hợp sẵn kit để thiết xe điều khiển từ xa 1.2 Phạm vi đề tài Đề tài tập trung vào khảo sát, nghiên cứu Kit eZ430-RF2500 Trên sở đó, thiết kế phần cứng lập trình để điều khiển xe 1.3 Hướng giải vấn đề Dựa vấn đề đặt sử dụng phương pháp sau để hoàn thành đề tài: - Nghiên cứu tài liệu: thu thập xử lí tài liệu Các tài liệu thu thập chủ yếu qua hướng dẫn thầy cô tài liệu mạng internet (trang web TI) - Thiết kế phần cứng mô hình xe - Dùng IAR Embedded Workbench (phần mềm hỗ trợ đầy đủ cơng cụ lập trình cho dịng sản phẩm MSP430) để viết chương trình, biên dịch, gỡ lỗi nạp cho Kit Trang CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Giới thiệu sơ lược MSP430 MSP430 họ vi điều khiển có cấu trúc RISC 16-bit sản xuất công ty Texas Instruments, dòng vi điều khiển siêu tiết kiệm lượng, sử dụng nguồn thấp, khoảng điện áp nguồn cấp từ 1.8V – 3.6V MSP430 kết hợp đặc tính CPU đại tích hợp sẵn module ngoại vi RISC (Reduced Intruction Set Computer) kiến trúc vi xử lý theo hướng đơn giản hóa tập lệnh Các lệnh xây dựng để thực với chu kỳ máy Mặt khác bus liệu bus địa (có độ rộng 16 bít) tách rời điều giúp cho trình đọc liệu mã lệnh diễn đồng thời nâng cao hiệu suất làm việc vi xử lý Các thành viên dòng MSP430 bao gồm: - MSP430F2232: 8KB + 256B Flash Memory 512B RAM - MSP430F2272: 32KB + 256B Flash Memory 1KB RAM - MSP430F2234: 8KB + 256B Flash Memory 512B RAM - MSP430F2254: 16KB + 256B Flash Memory 512B RAM - MSP430F2274: 32KB + 256B Flash Memory 1KB RAM Với tiêu thụ dịng thấp chế độ tích cực dịng tiêu thụ 200uA, 1Mhz, 2.2V Với chế độ standby dịng tiêu thụ 0.7uA Và chế độ tắt trì nhớ Ram dịng tiêu thụ nhỏ 0.1uA MSP430 có ưu chế độ nguồn nuôi Thời gian chuyển chế độ từ chế độ standby sang chế độ tích cực nhỏ (< 6us) 2.2 Kit eZ430 RF2500 2.2.1 Giới thiệu Kit eZ430 RF2500 eZ430-RF2500 thẻ giao tiếp USB truyền nhận liệu không dây eZ430RF2500 phát triển dựa MSP430F2274 kết hợp với chíp CC2500 truyền nhận tín hiệu vùng tần số 2.4 GHz, tích hợp sẵn cảm biến nhiệt độ Do đặc điểm dịng MSP430 có ưu lượng nên đáp ứng nhu cầu thiết bị di động MSP430 dùng nguồn 3.6V nên thiết kế ta sử dụng pin Trang Bộ eZ430-RF2500 sản phẩm làm việc với đầu cắm USB hệ thống độc lập với cảm biến bên Hoặc sử dụng thiết kế mở rộng với module ngoại vi Với giao diện gỡ lỗi USB cho phép sản phẩm truyền nhận liệu từ xa từ máy tính cá nhân sử dụng truyền nhận nối tiếp UART Đặc tính eZ430-RF2500: - Giao diện lập trình gỡ lỗi - Có sẵn 21 chân - Mật độ tích hợp cao, MSP430 có nguồn cực thấp siêu tiết kiệm lượng - Hai chân xuất/ nhập kết nối với hai led xanh đỏ cho phép người lập trình mơ trực quan - Một nút nhấn dùng để mô trực quan 2.2.2 Thành phần Kit eZ430 RF2500 TI Phần cứng: - Hai eZ430-RF2500T target board - Một eZ430-RF cổng USB - Một eZ430-RF2500 dùng Pin (có Pin kèm theo) Một CD- ROM MSP430 Development Tool có tài liệu, số code mẫu phần mềm ứng dụng: - MSP430x2xx Family User’s Guide, SLAU144 - eZ430-RF2500 User’s Guide, SLAU227 - Code Composer Essentials (CCE), SLAC063 - IAR Embedded Workbench (KickStart Version), SLAC050 - eZ430-RF2500 Sensor Monitor (Code and Visualizer), SLAC139 Hình mơ tả Kit eZ430-RF2500 dùng cổng USB Trang Hình 1: Board eZ430-RF2500 USB Hình Board eZ430-RF2500 dùng Pin Hình 2: Board eZ430-RF2500 dùng Pin Trang 2.2.3 Chức chân board eZ430-RF2500 Hình sơ đồ kết nối eZ430-RF2500T target board Battery Board Hình 3: Sơ đồ kết nối eZ430-RF2500T Target Board Battery Board Ngồi ứng dụng truyền nhận tín hiệu từ xa, board lấy 18 chân cho người lập trình thực hành phát triển ứng dụng riêng Bảng 1: Chức chân Battery Board PIN Chức P3.4 / UCA0TXD / UCA0SIMO GND RST / SBWTDIO TEST / SBWTCK VCC (3,6V) P3.5 / UCA0RXD / UCA0SOMI Mô tả Chân xuất/nhập số, chân truyền liệu USCI_A0 chế độ UART, ngõ vào chế độ tớ, ngõ chế độ chủ chế độ SPI Mass Chân reset tích cực mức thấp Lựa chọn chế độ kiểm tra cho chân JTAG port Nguồn Vcc 3.6V Chân xuất/nhập số, chân nhận liệu USCI_A0 chế độ UART, ngõ vào chế độ tớ, ngõ chế độ chủ chế độ SP Trang Bảng 2: Chức chân Board eZ430-RF2500 PIN Chức Mô tả GND Mass VCC Chân nguồn Vcc 1.8V - 3.6V P2.0 / ACLK / A0 / OA0I0 Chân xuất/nhập số, ngõ xung clock ACLK, ngõ vào tương tự A0 kênh ADC10 P2.1 / TAINCLK / SMCLK Chân xuất/nhập số, ngõ vào analog A1 kênh / A1 /A0O ADC10, xung clock INCLK Timer_A, xung clock chủ SMCLK P2.2 / TA0 / A2 / OA0I1 Xuất/nhập, ngõ vào tương tự A2 kênh ADC10, ngõ vào CCI0B Timer_A chế độ capture, ngõ OUT0 chế độ so sánh P2.3 / TA1 / A3 / VREF – / Xuất/nhập, ngõ vào tương tự A3 kênh ADC10, VeREF – OA1I1 / OA1O điện áp tham chiếu âm VREF – / VeREF –, ngõ vào CCI1B Timer_A, ngõ OUT1 chế độ so sánh P2.4 / TA2 / A4 / VREF+ / Chân xuất/nhập số, ngõ vào tương tự A4 kênh VeREF+/ OA1I0 ADC10, ngõ OUT2 Timer_A chế độ so sánh, ngõ vào/ra điện áp tham chiếu P4.3 / TB0 / A12 / OA0O Chân xuất/nhập số, ngõ vào tương tự A12 kênh ADC10, ngõ vào CCI0B Timer_B chế độ capture, ngõ OUT0 chế độ so sánh P4.4 / TB1 / A13 / OA1O Chân xuất/nhập số, ngõ vào tương tự A13 kênh ADC10, ngõ vào CCI1B Timer_B chế độ capture, ngõ OUT1 chế độ so sánh 10 P4.5 / TB2 / A14 / OA0I3 Chân xuất/nhập số, ngõ vào tương tự A14 kênh ADC10, ngõ OUT0 Timer_B chế độ so sánh Trang 11 P4.6 / TBOUTH / A15 / Chân xuất/nhập số, ngõ vào tương tự A15 kênh OA1I3 ADC10, chuyển mạch từ TB0 sang TB3 ngõ tổng trở cao 12 GND Mass 13 P2.6 / XIN (GDO0) Chân xuất/nhập số, kết nối thạch anh 14 P2.7 / XOUT (GDO2) Chân xuất/nhập số, kết nối thạch anh 15 P3.2 / UCB0SOMI / Chân xuất/nhập số, ngõ chế độ tớ, ngõ vào UCB0SCL chế độ chủ USCI_B0 chế độ SPI, nguồn xung clock SCLI2C I2C mode 16 P3.3 / UCB0CLK / Chân xuất/nhập số, ngõ vào xung clock UCA0STE USCI_B0, ngõ cho phép truyền liệu USCI_A0 chế độ tớ 17 P3.0 / UCB0STE / Chân xuất/nhập số, ngõ vào tương tự A5 kênh UCA0CLK / A5 ADC10, xung USCI_A0, chân cho phép truyền tín hiệu USCI_B0 chế độ tớ 18 P3.1 / UCB0SIMO Chân xuất/ nhập số, , ngõ chế độ tớ, ngõ vào /UCB0SDA chế độ chủ USCI_B0 chế độ SPI, liệu SDAI2C I2C mode Trang 2.2.4 Đặc điểm MSP430F2274 kit eZ430-RF2500 Sơ đồ khối bên MSP430F2274 thể qua Hình Hình 3: Sơ đồ khối MSP430F2274 Sơ đồ khối bao gồm số khối sau: khối nguồn xung, khối CPU, khối ADC10, khối Timer, khối chuẩn giao tiếp,… Các thông số kỹ thuật MSP430F2274 trình bày bảng Trang 10 Hình 6: Sơ đồ nguyên lý USB Trang 15 Hình 7: Sơ đồ nguyên lý board eZ430-RF2500T Trang 16 3.2 Sơ đồ khối mạch thiết kế 3.2.1 Mạch điều khiển Motor sử dụng cầu H - - Motor có cấu tạo gồm stato (phần đứng yên) với cực từ (bằng nam châm vĩnh cửu nam châm điện), roto với cuộn dây quấn, cổ góp, chổi điện Hình 8: Cấu tạo motor Relay dạng “công tắc” (switch) điện, gồm tiếp điểm điều khiển đóng mở dịng điện Cực C gọi cực chung, NC tiếp điểm thường đóng (Normal Closed) NO tiếp điểm thường mở (Normal Open) Hình cấu tạo hình dạng thực tế loại relay Với khả đóng mở tiếp điểm, nên ta chọn relay để làm khóa cho mạch cầu H Hình 9: Cấu tạo hình dạng thực tế loại relay Trang 17 - Mạch điều khiển motor sử dụng cầu H thiết kế hình 10 dk1 R1 Q5 Q6 NPN NPN 10k R2 dk2 10k Hình 10: Sơ đồ mạch điều khiển motor sử dụng cầu H 3.2.2 Các phím điều khiển R1 1k R2 1k R3 1k R4 1k Hình 11: Sơ đồ phím điều khiển Trang 18 3.3 Lưu đồ giải thuật Giải thuật truyền BEGIN B sai Phím tiến ấn A Đúng sai Phím phải ấn Đúng Đúng Truyền ký tự ‘a’ A Truyền ký tự ‘b’ Phím trái ấn Phím phải ấn Truyền ký tự ‘r’ Đúng Phím lùi ấn Đúng Truyền ký tự ‘l’ Trang 19 B Truyền ký tự ‘u’ sai sai Đúng sai Phím trái ấn Truyền ký tự ‘d’ sai Giải thuật nhận: BEGIN B Nhận liệu sai Nhận ‘b’ Nhận ‘a’ Đúng A Đúng Tiến rẻ trái Đúng rẻ phải Tiến sai sai Nhận ‘r’ Nhận ‘u’ Đúng Tiến rẻ phải A sai Nhận ‘l’ Nhận ‘d’ Đúng Đúng rẻ trái B Trang 20 lùi 3.4 Nguyên tắc truyền nhận liệu MSP430F2274 với CC2500 Quá trình truyền liệu bắt đầu với liệu cần truyền nạp vào ghi đệm truyền UCxTXBUF Từ liệu chuyển tới ghi dịch truyền Quá trình truyền kết thúc ghi dịch truyền rỗng Quá trình nhận liệu bắt đầu với liệu nhận ghi dịch nhận Receive Shift Register Dữ liệu từ ghi chuyển sang ghi UCxRXBUF Quá trình nhận kết thúc ghi dịch nhận Receive Shift Register rỗng 3.5 Khung liệu truyền nhận Khung liệu phân thành thành phần sau: - Chiều dài khung liệu cần truyền (Length) Byte: rõ độ dài cụ thể liệu cần truyền - Nguồn liệu (Source) Byte: xác định nguồn liệu - Định hướng (Destination) Byte: định hướng liệu cần truyền - Nội dung (Payload) Byte: trình bày nội dung liệu cần truyền Tối đa lên đến 20 byte Thực tế truyền liệu ta bỏ qua thành phần: source destination Khi truy xuất liệu từ khung ta truy xuất mảng gồm có số phần tử với độ dài khung liệu Trang 21 3.6 Chương trình Chương trình truyền #include "radios/family1/mrfi_spi.h" #include "mrfi.h" #define down (P2IN&0x02) #define right (P2IN&0x08) #define left (P4IN&0x08) #define up (P4IN&0x20) #define up_left (P2IN&0x04) mrfiPacket_t packetToSend; void transmit(char value); int main(void) { BSP_Init(); P1REN |= 0x04; P1IE |= 0x04; MRFI_Init(); mrfiSpiWriteReg(PKTCTRL0,0x41); //what does it mean? why we need it? MRFI_WakeUp(); MRFI_RxOn(); bis_SR_register(GIE+LPM4_bits); } void MRFI_RxCompleteISR() { } //define: signal to transmit //a: up_right //b: up_left //u: up //d: down //c: down_right //e: down_left //r: right //l: left //s: stop #pragma vector=PORT1_VECTOR interrupt void Port_1 (void) { for(;;){ if(up){ Trang 22 if(right){ transmit('a'); } else if(left){ transmit('b'); } else transmit('u'); } else if(down){ if(right){ transmit('c'); } else if(left){ transmit('e'); } else transmit('d'); } else if(right){ transmit('r'); } else if(left){ transmit('l'); } else if(up_left){ transmit('s'); } } } void transmit(char value) //transmit function { mrfiPacket_t packet; packet.frame[9]=value; packet.frame[0]=11; MRFI_Transmit(&packet, MRFI_TX_TYPE_FORCED); P1OUT^=0x03; } Trang 23 Chương trình nhận: #include "radios/family1/mrfi_spi.h" #include "mrfi.h" mrfiPacket_t packetToSend; void clearu_d(void); void left(void); void right(void); void up(void); void down(void); void clearl_r(void); int main(void) { P2DIR=0x11; P4DIR=0x50; BSP_Init(); P1REN |= 0x04; P1IE |= 0x04; MRFI_Init(); mrfiSpiWriteReg(PKTCTRL0,0x41); //what does it mean? why we need it MRFI_WakeUp(); MRFI_RxOn(); bis_SR_register(GIE+LPM4_bits); } void MRFI_RxCompleteISR() { mrfiPacket_t packet; Trang 24 MRFI_Receive(&packet); char signal; signal=packet.frame[9];//received signal if(signal=='u'){ //go ahead clearl_r(); up(); } else if(signal=='a'){ //go ahead and turn right up(); right(); } else if(signal=='b'){ //go ahead and turn left up(); left(); } else if(signal=='d') { //go back clearl_r(); down(); } else if(signal=='c'){//down_right down(); right(); } else if(signal=='e'){// down_left down(); left(); } else if(signal=='l'){ //turn left Trang 25 left(); } else if(signal=='r'){ //turn right clearu_d(); right(); } else if(signal=='s'){ //stop by control clearl_r(); clearu_d(); } else{ //stop default clearu_d(); clearl_r(); } } //control functions //defination: //P2.2_up(0x04) //P2.4_down(0x10) //P4.4_left(0x10) //P4.6_right(0x40) void clearu_d(void){ // stop up_down P2OUT=0x00; } void clearl_r(void){ // stop left_right P4OUT=0x00; } void left(void){ P4OUT=0x10; //P4.4 Trang 26 P1OUT^=0x03; delay_cycles(100000); clearl_r(); } void right(void){ P4OUT=0x40; // P4.6 P1OUT^=0x03; delay_cycles(100000); clearl_r(); } void up(void){ clearu_d(); P2OUT=0x01; //P2.0 P1OUT^=0x03; } void down(void){ clearu_d(); P2OUT=0x10; //P2.4 P1OUT^=0x03; } Trang 27 KẾT LUẬN - Nhóm tìm hiểu Kit eZ430-RF2500 thiết kế mạch, đáp ứng yêu cầu đặt đề tài Xe điều khiển chạy tốt ổn định, độ bền tương đối Ngồi ra, nhóm nắm số kiến thức MSP430, đặc biệt Kit eZ430-RF2500 Hơn áp dụng vào thiết kế mạch thực tế Qua nhóm hiểu biết thêm dòng vi điều khiển - Kết cho thấy xe điều khiển truyền nhận tốt khoảng cách 100 mét môi trường truyền thẳng, mơi trường truyền có nhiều chướng ngại khoảng cách truyền nhận nhỏ Trang 28 TÀI LIỆU THAM KHẢO [1] Nguyễn Trung Lập Giáo trình Kỹ thuật số Nhà xuất Đại học Cần Thơ Cần Thơ, 12/2003 [2] www.ti.com [3] eZ430-RF2500_User Guide_SLAU227A [4] Thomas Watteyne eZWSN: Experimenting with Wireless Sensor Networks using the eZ430-RF2500 Trang 29

Ngày đăng: 22/06/2023, 21:31

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan