Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 52 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
52
Dung lượng
1,23 MB
Nội dung
n Thit K Mch S GV Hng Dn: KS.ng Thỏi Sn MC LC Trang LI NểI U 3 Chơng 1. TổNG QUAN Về Viđiềukhiển P89V51RD2 4 I. Giới thiệu về viđiềukhiển P89V51RD2. 4 1.1. Sơ đồ chân và chức năng các chân P89V51RD2. 5 1.1.1. Sơ đồ chân P89V51RD2 5 1.1.2. Chức năng các chân 5 1.2. Cấu trúc bên trong viđiềukhiển P89V51RD2. 8 1.2.1. Tổ chức bộ nhớ. 8 1.2.2. B nhớ ROM 8 1.2.3. B nhớ RAM 9 1.3. Kết nối với phần cứng của một số chân cơ bản 15 1.3.1. Kết nối trên hai chân XTAL1 và XTAL2 15 1.3.1. Kết nối trên chân RESET 16 II. Lập trình cho viđiềukhiển p89v51 17 2.1. Tổng quan về ngôn ngữ lập trình ASEMBLY 17 2.1.2. Một số quy ớc trong lập tình ASEMBLY 17 2.1.3. Tập lệnh trong ViĐiềukhiển MCS-51 18 Chơng 2. thiếtkếrobot 25 2.1. Cảm biến nhận biết vạch trắng. 25 2.1.1. Nguyên lý chung. 25 2.1.2 Cảm biến quang. 25 2.2. Mạch cầu H và ứngdụng mạch cầu H trong điềukhiểnđộng cơ. 28 2.2.1. Sơ đồ cấu tạo và nguyên lý hoạt động của cầu H. 28 2.2.1.1. Relay H-Bridges. 29 2.2.1.2. Cầu H bán dẫn 30 2.2.1.3. Cầu H dùng Relay kết hợp dùng FET 30 2.2.1.4.Phơng phát điều chế xung PWM điềukhiển tốc độ động cơ DC 31 2.4. Thiếtkế theo từng khối 32 2.4.1. Khối nguồn. 33 2.4.2. Khối điều khiển. 34 2.4.3.Khối điều xung điềukhiểnđộng cơ. 35 2.4.4. Khối cảm biến phát hiện vạch trắng. 36 2.4.5. Khối hiển thị. 37 2.5. Thiết kế, chế tạo mạch điện, giải thuật và chơng trình cho robot 38 2.5.1. Sơ đồ nguyên lý phần điều khiển. 38 2.5.2. Sơ đồ nguyên lý phần công suất. 39 2.5.3. Giải thuật và chơng trình cho robot. 40 2.5.3.1. Giải thuật. 40 2.5.3.2. Chơng trình điềukhiểnrobot 43 Kết luận 50 Tài liệu tham khảo 51 _____________________________________________________________________________ _ SV Thc hin: Hong Th Mnh 47K - TVT 1 Đồ Án ThiếtKế Mạch Số GV Hướng Dẫn: KS.Đặng Thái Sơn Lời nói đầu Công nghệ số hiện nay có những bước phát triển rất nhanh. Nó luôn gắn liền với sự phát triển của các công nghệ khác. Công nghệ số đã đem đến cho con người những ứngdụng quan trọng trong tất cả các nghành, các lĩnh vực. Do vậy công nghệ tin học, công nghệ số là một trong nhứng ngành phát triển hàng đầu trong giai đoạn hiện nay. Là một sinh viên khoa công nghệ nghành Điện tử - Viễn thông, bản thân em hiểu rằng vận dụng những kiến thức đã học vào thực tế là vô cùng quan trọng. Với suy nghĩ trên, cùng với niềm yêu thích robot, em đã quyết định chọn đề tài “øng dôngvi ®iÒu khiÓn P89V51RD1 ®Ó ThiÕt kÕ robottù ®éng”. Cụ thể em tìm hiểu cấu trúc và kỹ thuật lập trình cho IC P89V51RD2. Em xin chân thành cảm ơn các thầy cô giáo trong bộ môn Điện tử - Viễn thông Khoa Công nghệ đã giảng dạy cho chúng em những kiến thức về chuyên môn, để chúng em thực hiện tốt đồ án Kỹ thuật số này. Đây là lần đầu em được áp dụng những kiến thức đã học vào thực tế, do kiến thức còn hạn chế nên đồ án này không thể tránh được những thiếu sót, Vì vậy em rẩt mong được sự chỉ bảo của các thầy cô và những ý kiến đóng góp của các bạn. _____________________________________________________________________________ _ SV Thực hiện: Hoàng Thế Mạnh 47K - ĐTVT 2 Đồ Án ThiếtKế Mạch Số GV Hướng Dẫn: KS.Đặng Thái Sơn Đặ biệt em xin chân thành cảm ơn thầy giáo Đặng Thái Sơn đã nhiệt tình giúp đỡ em hoàn thành đề tài này! Em xin chân thành cảm ơn ! Vinh, ngày…Tháng….Năm 2009 CHƯƠNG 1: Tổng quan về viđiềukhiển P89V51RD2 I.Giới thiệu về viđiều khiển. P89V51RD2 là một hệ vi tính 8-bit đơn chip CMOS, có hiệu suất cao, công suất tiêu thụ thấp và có 4k byte bộ nhớ ROM Flash xoá được, lập trình được. Chip này được sản xuất dựa trên công nghệ nhớ không mất nội dung, có độ tích hợp cao của ATmel. Và nó cũng tương thích với các chuẩn của công nghệ MCS- 51. Sơ đồ khối của P89V51RD2 _____________________________________________________________________________ _ SV Thực hiện: Hoàng Thế Mạnh 47K - ĐTVT 3 Đồ Án ThiếtKế Mạch Số GV Hướng Dẫn: KS.Đặng Thái Sơn Hình 1.1 Sơ đồ khối của P89V51RD2 Những đặc điểm của P89V51RD2 64 Kbyte code flash. 1 Kbyte ram nội. 32 đường xuất nhập (4 Port). 3 bộ Timer/counter 16 bit. Có khả năng Giao tiếp truyền dữ liệu nôi tiếp. Tần số hoạt động từ: 0Hz - 40Mhz. Bộ xử lý bit (thao tác trên từng bit riêng rẽ), co 210 bit có thể truy xuất đến từng bit. I.1 Cấu trúc bên ngoài của viđiềukhiển P89V51RD2. _____________________________________________________________________________ _ SV Thực hiện: Hoàng Thế Mạnh 47K - ĐTVT 4 Đồ Án ThiếtKế Mạch Số GV Hướng Dẫn: KS.Đặng Thái Sơn 1.1.1. Sơ đồ các chân Hình 1.2 sơ đồ chân của P89V51RD2 1.1.2. Chức năng của các chân. IC P89V51RD2 có tất cả 40 chân, chia làm 4 Port, mỗi Port 8 chân, và các chân chức năng khác. Cụ thể như sau: Chân VCC: Chân số 40 là chân cấp nguồn cho viđiều khiển. Nguồn điện cấp là 5V. Chân GND : Chân số 20 là chân nối đất. Port 0(P0): Port 0 gồm 8 chân, từ chân 32 đến chân 39, nó có hai chức năng: Chức năng xuất nhập: Các chân này được dungđể nhận tin hiệu từ ngoài vào viđiềukhiển hoặc để xuất tín hiệu từviđiềukhiển ra ngoài. Chức năng là bus dữ liệu và bus địa chỉ(AD7-AD0): Port này còn làm nhiệm vụ lấy dữ liệu từ ROM hoặc RAM ngoại nếu có kết nối _____________________________________________________________________________ _ SV Thực hiện: Hoàng Thế Mạnh 47K - ĐTVT 5 Đồ Án ThiếtKế Mạch Số GV Hướng Dẫn: KS.Đặng Thái Sơn với bộ nhớ ngoài, đồng thời P0 còn được dùngđể định địa chỉ của bộ nhớ ngoài. Port 1(P1) : Port 1 là port I/O trên các chân 1-8. Các chân đợc ký hiệu P1.0, P1.1, P1.2, P1.7 có thể dùng cho giao tiếp với các thiết bị ngoài nếu cần. P1.0/T2: Ngõ vào counter cho Timer/counter2 hoặc ngõ ra cho Counter/Timer2. P1.1/T2EX: Điềukhiển hướng và cạnh kích chức năng Capture cho Timer/counter2. P1.2/ECI: Ngõ vào xung nhịp. Tín hiệu này là nguồn xung nhịp ngoài cho chức năng PCA. P1.3/CEX0: Ngõ vào xung nhịp cho chức năng Capture/Compare modul 0. P1.4 SS : Chọn cổng phụ vào cho SPI (Serial Peripheral Interface). CEX1: Ngõ vào xung nhịp cho chức năng Capture/Compar modul1 modul P1.5 MOSI: Phục vụ SPI. CEX2: Ngõ vào xung nhịp cho chức năng Capture/Compare modul 2. P1.6 MISO: Phục vụ SPI. CEX3: Ngõ vào xung nhịp cho chức năng Capture/Compare P1.7 SCK: Phục vụ SPI. CEX4: Ngõ vào xung nhịp cho chức năng Capture/Compare modul 4. Port 2(P2): Port 2 gồm 8 chân, từ chân 21- 28, có hai chức năng: Chức năng xuất nhập. Chức năng là bus địa chỉ cao (A8-A15): Khi kết nối vớ bộ nhớ ngoài _____________________________________________________________________________ _ SV Thực hiện: Hoàng Thế Mạnh 47K - ĐTVT 6 Đồ Án ThiếtKế Mạch Số GV Hướng Dẫn: KS.Đặng Thái Sơn có dung lượng lớn, cần 2 byte để định địa chỉ của bộ nhớ do byte thấp do P0 đảm nhận, bit cao do P2 đảm nhiệm. Port 3 (P3): Port 3 gồm 8 chân chân 10-17, có hai chức năng: Chức năng xuât nhập. Với mỗi chân có chức năng riêng thứ hai trong bảng sau: Các chân có chức năng đặc biệt: CHÂN TÊN CHỨC NĂNG P3.0 RxD Ngõ vào nhận dữ liệu nối tiếp P3.1 TxD Ngõ xuất dữ liệu nối tiếp P3.2 INT0 Ngõ ngắt cứng thứ 0 P3.3 INT1 Ngõ ngắt cưng thứ 1 P3.4 T0 Ngõ vào của timer/Counter thứ 0 P3.5 WR Ngõ điềukhiển nghi dữ liệu lên bộ nhớ ngoài P3.7 RD Ngõ điềukhiển đọc dữ liệu từ bộ nhớ ngoài Chân RESET (RST) Ngõ vào RST ở chân 9, là ngõ vao Reset, dungđểthiết lập rạng thái ban đầu cho viđiều khiển.Hệ thống sẽ được thiết lập lại các giá trị ban đầu nếu ngõ này ở mức 1 tối thiểu 2 chu kỳ máy. Chân XTAL1 và XTAL2 Hai chân này ở vị trí 18 và 19, được sử dụngđể nhận nguồn xung clock từ bên ngoài để hoạt động, thường được ghép nối với thạch anh và các tụđể tạo nguồn xung clock ổn định. Chân PSEN (chân cho phép bộ nhớ chương trình) PSEN: (program store enable). Là chân thứ 29. Tín hiệu được xuất ra ở chân này dungđể truy xuất bộ nhớ chương trình ngoài. Chân này thường được nối với chân OE (output enable) của ROM ngoài Khi viđiềukhiển làm việc với chương trình ngoài, chân này sẽ phat ra tìn hiệu hoạt động ở mức thấp và được kích hoạt 2 lần trong một chu kỳ máy. Khi thực thi một chương trình ở ROM nội, chân này được duy trì ở mức không tích cực. _____________________________________________________________________________ _ SV Thực hiện: Hoàng Thế Mạnh 47K - ĐTVT 7 Đồ Án ThiếtKế Mạch Số GV Hướng Dẫn: KS.Đặng Thái Sơn Chân ALE/PROG : (Chân 30, chân cho phép chốt địa chỉ) Khi viđiềukhiển truy xuất bộ nhớ ngoài, P0 vừa có chưc năng là bus địa chỉ, vừa có chức năng là bus dữ liệu, do đó phải tách các đường dữ liệu và đường địa chỉ. Tín hiệu ở chân ALE dung làm tín hiệu điềukhiểnđể giải đa hợp các đường địa chỉ và các đường dữ liệu khi kết nối chúng với IC chốt. Các xung tín hiệu ALE có tốc độ bằng 1/6 lần tần số dao động đưa vào vi điều khiển, Như vạy có thể dùng tín hiệu ở ngõ ra ALE làm xung clock cung cấp cho các phần khác của hệ thống. Chân EA/VPP: Chân EA dùngđể xác định hướng chương trình thực hiện được lấy từ ROM nội hay ROM ngoại. Khi chân EA nối với mức logic 1(+5V) thì viđiềukhiển thực hiện chương trình lấy từ bộ nhớ nội. Khi chân EA nối với mức logic 0 (0V) thì viđiềukhiển thực hiên chương trình lấy từ bộ nhớ ngoài. I.2 Cấu trúc bên trong của P89V51RD2 1.2.1 Tổ chức bộ nhớ Các chip viđiềukhiểndùng làm thành phần trung tâm trong các thiết bị hướng điều khiển. Bộ nhớ thường có dung lượng bé hơn nhiều so với một hệ vi xử lý. Nó còn không có ổ đĩa và hệ điều hành. Chương trình điềukhiển phải thường trú trong Rom. Do vậy, chương trình vẫn được lưu trữ ngay cả khi mất điện. Do lý do trên, chíp P89V51RD2 có không gian bộ nhớ riêng cho chương trình và dữ liệu. Cả bộ nhớ chương trình và bộ nhớ dữ liệu đều nằm trong chip. Tuy nhiên ta có thể mở rộng bộ nhớ chương trình và bộ nhớ dữ liệu bằng cách sử dụng các chip nhớ bên ngoài với dung lượng tối đa là 64kbyte cho bộ nhớ chương trình và 64kbyte cho bộ nhớ dữ liệu. 1.2.2. Bộ nhớ chương trình (ROM): Bộ nhớ chơng trình lu giữa chơng trình điềukhiển chip P89V51RD2. Có _____________________________________________________________________________ _ SV Thực hiện: Hoàng Thế Mạnh 47K - ĐTVT 8 Đồ Án ThiếtKế Mạch Số GV Hướng Dẫn: KS.Đặng Thái Sơn 2 vùng nhớ nội flash trong MCU, block 0 có 64Kbytes và đợc tổ chức thành 512 sector, mỗi sector chứa 128bytes. Block 1 chứa chơng trình ISP/IAP và đợc kích hoạt khi chọn kết hợp bit reset mềm (SWR) và bit chọn bank (BSEL). Sau khi reset, CPU bắt đầu thực hiện chơng trình từ địa chỉ 0000H. Khi chơng trình lớn quá kích thớc bộ nhớ chơng trình bên trong chip, chơng trình này phải đợc nạp vào bộ nhớ chơng trình ngoài. Nếu chơng trình nằm trong ROM nội, chân /EA của P89V51RD2 phải đợc treo lên 5V. Nếu chơng trình ở ROM ngoài, chân /EA phải nối đất. Việc truy xuất chơng trình ở bộ nhớ ngoài phải kết hợp với chân tín hiệu truy xuất bộ nhớ ngoài /PSEN. 1.2.3. Bộ nhớ dữ liệu, bộ nhớ RAM P89V51RD2 có 1 Kbytes ram ở bên trong chip. RAM trong P89V51RD2 bao gồm nhiều thành phần: phần lưu trữ đa dụng, phần lưu trữ địa chỉ hóa từng bit, các bank thanh ghi và các thanh ghi chức năng đặc biệt. Hai đặc tính cần chú ý là: - Các thanh ghi và các port xuất nhập đã được định vị (xác định) trong bộ nhớ và có thể truy xuất trực tiếp giống như các địa chỉ bộ nhớ khác. - Ngăn xếp bên trong Ram nội nhỏ hơn so với Ram ngoại trong các bộ Microcont r rollekhác. Ram bên trong P89V51RD2 được phân chia nh sau: • Các bank thanh ghi có địa chỉ từ 00H đến 1FH. • Ram địa chỉ hóa từng bít có địa chỉ từ 20H - 2FH. • Ram đa dụngtừ 30H - 7FH. • Các thanh ghi chức năng đặc biệt từ 80H - FFH. _____________________________________________________________________________ _ SV Thực hiện: Hoàng Thế Mạnh 47K - ĐTVT 9 Đồ Án ThiếtKế Mạch Số GV Hướng Dẫn: KS.Đặng Thái Sơn Hình 1.3. Sơ đồ khối bộ nhớ data trên chip P89V51RD2 1.2.3.1 Cấu trúc RAM trong viđiều khiển. _____________________________________________________________________________ _ SV Thực hiện: Hoàng Thế Mạnh 47K - ĐTVT 10 [...]... thanh ghi A vi ni dung thanh ghi Rn ANL A,data (2,1): AND ni dung thanh ghi A vi d liu trc tip ANL A,@Ri (1,1): AND ni dung thanh ghi A vi d liu giỏn tip trong RAM ANL A,#data (2,1): AND ni dung thanh ghi vi d liu tc thi ANL data,A (2,1): AND mt d liu trc tip vi A ANL data,#data (3,2): AND mt d liu trc tip vi A mt d liu tc thi ANL C,bit (2,2): AND c nh vi 1 bit trc tip ANL C,/bit (2,2): AND c nh vi bự 1... (1,1): OR thanh ghi A vi thanh ghi Rn ORL A,data (2,1): OR thanh ghi A vi mt d liu trc tip ORL A,@Ri (1,1): OR thanh ghi A vi mt d liu giỏn tip ORL A,#data (2,1): OR thanh ghi A vi mt d liu tc thi ORL data,A (2,1): OR mt d liu trc tip vi thanh ghi A ORL data,#data (3,1) :OR mt d liu trc tip vi mt d liu tc thi ORL C,bit (2,2): OR c nh vi mt bit trc tip ORL C,/bit (2,2): OR c nh vi bự ca mt bit trc tip... 1.3.2 Kt ni chõn RESET Chõn 9 Vic kt ni chõn RESET m bo h thng bt u lm vic khi vi iu khin c cp in, hoc ang hot ng m h thng b li cn tỏc ng cho _ _ SV Thc hin: Hong Th Mnh 47K - TVT 16 n Thit K Mch S GV Hng Dn: KS.ng Thỏi Sn vi iu khin hot ng tr li, hoc do ngi s dng mun quay v trng thỏi ban u .Vi vy chõn RESET c kt ni nh sau: Chỳ ý: Vivi iu khin s dng thch anh cú... K Mch S GV Hng Dn: KS.ng Thỏi Sn XRL A,Rn (1,1): XOR thanh ghi A vi thanh ghi Rn XRL A,data (2,1): XOR thanh ghi A vi m d liu trc tip XRL A,@Ri (1,1): XOR thanh ghi A vi mt d liu giỏn tip XRL A,#data (2,1): XOR thanh ghi A vi m d liu tc thi XRL data,A (2,1): XOR mt d liu trc tip vi thanh ghi A XRL data,#data (3,1): XOR mt d liu trc tip vi mt d liu tc thi SETB C (1,1): t c nh SETB bit (2,1): t mt bit... c mt hoc nhiu mu sc khỏc nhau Tuy nhiờn nhng cm bin ny khỏ t v s dng chỳng vo bi toỏn dũ ng cho robot nm 2009 cú l l mt s lóng phớ Rừ rng vi mụi trng di chuyn ca robot ó nờu phn 1, ta s ch cn mt cm bin nhn bit c ni no sỏng, ni no ti l Vi nhng vch trng ú s l ni sỏng, vi nn xanh ú s l ni ti v nhim v ca robot l s i theo nhng vch sỏng ú Chỳng ta cú th lm ra cỏc cm bin ny v cht lng cng mc chp nhn c ... ca vi iu khin 2.2.1.3 Cầu H bán dẫn (Semiconductor H-Bredges) i vi cu H bỏn dn, khúa A1,B1,A2,B2 l cỏc cp transistor hot FET b ph Cỏch thc iu khin v hot ng hon ton ging Relay H-Bridges 2.2.1.4 Cu H dựng relay kt hp vi FET Vi nhng gỡ trỡnh by trờn thỡ cu H dựng cho robot l s la chn ti u hn c Tuy nhiờn mch cu H khỏ phc tp v chỳng ta cn n cu H khi cú yờu cu tc o chiu ng c nhanh Tc o chiu ng c cho robot. .. Duty cycle của các chuỗi xung khác nhau Hình 2.9 Khi thay đổi duty cycle, ta sẽ có điện áp trung bình thay đổi 2.4 Thit k RoBot theo tng khi Khối Khối hiển thị nguồn 2.4.1 S khi tng quỏt Khối cảm biến Mch iu khin robot bao gm cỏc khi chớnh c liờn kt vi nhau nh sau: Khối Vi điềukhiển _ Left Right _ Motor - TVT Motor Driver Motor SV Thc hin: Hong Th Mnh 47K 32 ... v cho IRF540 v cun dõy ca relay 2.3 Phng phỏp iu ch xung PWM iu khin tc ng c Trong quỏ trỡnh di chuyn ca robot, cú nhng lỳc chỳng ta cn robot chy tht nhanh, ụi khi cú nhng lỳc ta li cn nú chy chm Vớ d nhng on ng thng, nhng lỳc robot lờn dc thỡ phi cho robot chy nhanh Cũn nhng khỳc cua, lỳc robot bng qua rng thỡ ta li cn tc thp Tht ra chỳng ta cú th dựng c khớ thay i tc ng c nh: bỏnh rng gim... 12MHz thng s dng t C=10uF v R=10K II Lp trỡnh cho vi iu khin P89V51DR2 2.1 Tng quan v ngụn ng lp trỡnh ASSEMBLY Assembly l mt ngụn ng lp trỡnh cp thp gn vi ngụn ng mỏy, chng trỡnh sau khi vit bng assembly cn c chuyn i qua mó lnh (hay cũn gi l mó mỏy) ca vi iu khin, quỏ trỡnh chuyn i c thc hin bng chng trỡnh dch Assembler Cỏc mó lnh sau ú c np vo Rom ca vi iu khin thc hin chng trỡnh Chng trỡnh dch Assembler... Hình 2.4 Nguyên lý thu dùng ánh sáng khả kiến 2.2 Mch cu H (H bridge) v ng dng ca nú trong iu khin ng c DC Trong quỏ trỡnh di chuyn ca robot, cú nhng lỳc chỳng ta mun ng c quay thun, ụi khi li mun ng c quay ngc li i vi ng c DC, thỡ cụng vic o chiu ng c rt n gin Chỳng ta ch vic trỏo hai u dõy ngun cp cho ng c Nhng vn l lm th no cú th o chiu ca ng c m khụng cn r dõy ngun cp cho ng c? Cõu tr li l ta s dng . Vinh, ngày…Tháng….Năm 2009 CHƯƠNG 1: Tổng quan về vi điều khiển P89V51RD2 I.Giới thiệu về vi điều khiển. P89V51RD2 là một hệ vi. năng xuất nhập: Các chân này được dung để nhận tin hiệu từ ngoài vào vi điều khiển hoặc để xuất tín hiệu từ vi điều khiển ra ngoài. Chức năng là bus dữ