LỜI NÓI ĐẦU Trong lĩnh vực khoa học công nghệ ngày càng phát triển không ngừng ngành tin học nói chung đã có mặt hầu như trong tất cả các ngành nghề từ đơn giản đến phức tạp . Công nghệ tin học đã giúp ích không nhỏ vào công việc giảng dạy và mang lại nhiều kết quả không nhỏ. Proteus VSM (Virtual Simulation Microprocessor) là chương trình tạo và chạy các mạch điện ,các mạch có vi xử lý và mô phỏng quá trình làm việc của mạch nguyên lý, giúp cho người học điện tử hình dung trực quan hơn vào thực tế của các linh kiện điện tử. Sau một thời gian thực hiện đề tài, mặc dù chúng em đã gặp nhiều khó khăn nhưng với sự giúp đỡ của thầy Lê Quốc Dũng và các thầy cô trong khoa CNTD cùng sự cố gắng nỗ lực của bản thân, đề tài “Tìm hiểu phần mềm mô phỏng Proteus” đã được hoàn thành đúng tiến độ. Dù đã rất cố gắng và nỗ lực để thực hiện đề tài này, nhưng do kiến thức và thời gian có hạn nên không tránh khỏi những thiếu sót và hạn chế, vì vậy chúng em rất mong nhận được những ý kiến đóng góp của quý thầy cô cùng các bạn. Sinh viên thực hiện: Vũ Văn Hải CHƯƠNG 1 : KHÁI QUÁT CHUNG VỀ PHẦN MỀM MÔ PHỎNG PROTEUS 1.1. LỊCH SỬ HÌNH THÀNH VÀ PHÁT TRIỂN CỦA PHẦN MỀM MÔ PHỎNG PROTEUS Phần mềm mô phỏng proteus hay còn gọi là proteus VSM ( Virtual Simulation Microprocessor ) được sáng tạo bởi công ty Labcenter Electronics vào năm 1989. Đây là một phần mềm tạo và chạy các mạch điện , các mạch có vi xử lý và mô phỏng quá trình làm việc của mạch nguyên lý , giúp cho người học và nghiên cứu các mạch điện tử hình dung trực quan và thực tế hơn. Proteus VSM đã được sử dụng khá rộng rãi trên 35 quốc gia và đã khẳng định được thế mạnh của nó về mô phỏng các mạch nguyên lý sát với thực tế. Từ khi ra đời tới nay phần mềm càng ngày nó cảng được hoàn thiện và phát triển mạnh mẽ. Phần mềm mô phỏng proteus cung cấp cho người sử dụng hầu như toàn bộ các linh kiện điện tử, đặc biệt hỗ trợ cho cả các MCU (Microcontroller Unit) như 8051, PIC, AVR, Motorola…để người dùng có thể tạo ra một mạch nguyên lý, chạy thử và so sánh kết quả với thực tế. Chính nhờ tính năng ưu việt có thể tạo và chạy thử từ các mạch đơn giản đến phức tạp nên nó được dùng trong giảng dạy, trong các phòng thí nghiệm điện tử hay trong thực hành vi xử lý… 1.2. PHẠM VI ỨNG DỤNG CỦA PHẦN MỀM MÔ PHỎNG PROTEUS 1.2.1.Các ưu điểm Dễ dàng tạo một sơ đồ nguyên lý đơn giản từ các mạch điện đơn giản, đến các mạch có bộ lập trình vi xử lý. Chỉnh sửa dễ dàng. Có công cụ hỗ trợ kiểm tra lỗi, xem và lưu lại phần báo lỗi. Chạy mô phỏng và phân tích các tính chất của mạch điện tử cơ bản. Công cụ hỗ trợ việc chạy và mô phỏng rất mạch và chính xác. Cho phép phân tích tần số sóng, âm thanh… không nhưng thế phần mềm còn thêm các máy phân tích như : đồng hồ đo Vôn, Ampe, đến máy đo dao động, máy tạo sóng dao động… Ngoài ra phần mềm còn cung cấp cho người sử dụng những công cụ mạnh mà phần mềm khác không có. Chẳng hạn thư viện LED với các loại màu sắc khác nhau kể cả led 7 thanh. Hơn thế phần hiển thị mạnh nhất của Proteus VSM là LCD, nó có thể mô phỏng rất nhiều LCD từ đơn giản đến phức tạp. Một ưu điểm nữa là Proteus VSM có thể mô phỏng công cụ phát và thu tín hiệu từ các mach giao tiếp với máy tính qua công cụ RS232. Trong đó người dùng có thể điều khiển được quá trình truyền phát , tốc độ Baud…giúp người lập trình có thể mô phỏng các mặt truyền phát tín hiệu. Một điểm mạch khác là phần mềm cung cấp cho người sử dụng công cụ biên dịch cho các họ vi xử lý như MSC51, AVR, HC11… Qua đó tạo ra các tập tin HEX dùng để nạp cho vi xử lý và tập tin DSI dùng để xem và chạy kiểm tra từng bước trong chương trình mô phỏng. Đối với các mạch vi xử lý phần mềm không ngừng cung cấp các hình ảnh thực tế của các linh kiện xuất mà còn cung cấp cho người lập trình nhiều của sổ thông báo các nội dung bộ nhớ , con trỏ, thanh ghi,… Proteus VSM có thư viện khá lớn với hơn 6000 linh kiện các loại và ngày càng được bổ sung. Ngoài ra còn có ma trận phím tạo đơn giản (keypad) cho người thiết kế khi cần thao tác trên các ma trận phím. 1.2.2.Khả Năng Ứng Dụng Khả năng ứng dụng chính của phần mềm là mô phỏng, phân tích các kết quả từ mạch nguyên lý. Giúp người dùng thấy trước được kết quả của mạch thiết kế là đúng hay sai trước khi thiết kế trên bo mạch.
TẬP ĐOÀN ĐIỆN LỰC VIỆT NAM TRƯỜNG ĐẠI HỌC ĐIỆN LỰC KHOA CÔNG NGHỆ TỰ ĐỘNG ĐỒ ÁN MÔN HỌC MÔ HÌNH HÓA VÀ MÔ PHỎNG Giảng viên hướng dẫn: Th.s LÊ QUỐC DŨNG Sinh viên thực : VŨ VĂN HẢI Khoa : CÔNG NGHỆ TỰ ĐỘNG Lớp : D7_CNTD1 Khoá : 2012 - 2017 Hà Nội, tháng 06 năm 2016 Mục lục LỜI NÓI ĐẦU Trong lĩnh vực khoa học công nghệ ngày phát triển không ngừng ngành tin học nói chung có mặt tất ngành nghề từ đơn giản đến phức tạp Công nghệ tin học giúp ích không nhỏ vào công việc giảng dạy mang lại nhiều kết không nhỏ Proteus VSM (Virtual Simulation Microprocessor) chương trình tạo chạy mạch điện ,các mạch có vi xử lý mô trình làm việc mạch nguyên lý, giúp cho người học điện tử hình dung trực quan vào thực tế linh kiện điện tử Sau thời gian thực đề tài, chúng em gặp nhiều khó khăn với giúp đỡ thầy Lê Quốc Dũng thầy cô khoa CNTD cố gắng nỗ lực thân, đề tài “Tìm hiểu phần mềm mô Proteus” hoàn thành tiến độ Dù cố gắng nỗ lực để thực đề tài này, kiến thức thời gian có hạn nên không tránh khỏi thiếu sót hạn chế, chúng em mong nhận ý kiến đóng góp quý thầy cô bạn Sinh viên thực hiện: Vũ Văn Hải CHƯƠNG : KHÁI QUÁT CHUNG VỀ PHẦN MỀM MÔ PHỎNG PROTEUS LỊCH SỬ HÌNH THÀNH VÀ PHÁT TRIỂN CỦA PHẦN MỀM MÔ PHỎNG PROTEUS 1.1 Phần mềm mô proteus hay gọi proteus VSM ( Virtual Simulation Microprocessor ) sáng tạo công ty Labcenter Electronics vào năm 1989 Đây phần mềm tạo chạy mạch điện , mạch có vi xử lý mô trình làm việc mạch nguyên lý , giúp cho người học nghiên cứu mạch điện tử hình dung trực quan thực tế Proteus VSM sử dụng rộng rãi 35 quốc gia khẳng định mạnh mô mạch nguyên lý sát với thực tế Từ đời tới phần mềm ngày cảng hoàn thiện phát triển mạnh mẽ Phần mềm mô proteus cung cấp cho người sử dụng toàn linh kiện điện tử, đặc biệt hỗ trợ cho MCU (Micro-controller Unit) 8051, PIC, AVR, Motorola…để người dùng tạo mạch nguyên lý, chạy thử so sánh kết với thực tế Chính nhờ tính ưu việt tạo chạy thử từ mạch đơn giản đến phức tạp nên dùng giảng dạy, phòng thí nghiệm điện tử hay thực hành vi xử lý… PHẠM VI ỨNG DỤNG CỦA PHẦN MỀM MÔ PHỎNG PROTEUS 1.2 - 1.2.1.Các ưu điểm Dễ dàng tạo sơ đồ nguyên lý đơn giản từ mạch điện đơn giản, đến mạch - có lập trình vi xử lý Chỉnh sửa dễ dàng Có công cụ hỗ trợ kiểm tra lỗi, xem lưu lại phần báo lỗi Chạy mô phân tích tính chất mạch điện tử Công cụ hỗ trợ việc chạy mô mạch xác Cho phép phân tích tần số sóng, âm thanh… không phần mềm thêm máy phân tích : đồng hồ đo - Vôn, Ampe, đến máy đo dao động, máy tạo sóng dao động… Ngoài phần mềm cung cấp cho người sử dụng công cụ mạnh mà phần mềm khác Chẳng hạn thư viện LED với loại màu sắc khác kể led Hơn phần hiển thị mạnh Proteus VSM LCD, mô - nhiều LCD từ đơn giản đến phức tạp Một ưu điểm Proteus VSM mô công cụ phát thu tín hiệu từ mach giao tiếp với máy tính qua công cụ RS232 Trong người dùng điều khiển trình truyền phát , tốc độ Baud…giúp người lập trình mô - mặt truyền phát tín hiệu Một điểm mạch khác phần mềm cung cấp cho người sử dụng công cụ biên dịch cho họ vi xử lý MSC51, AVR, HC11… Qua tạo tập tin HEX dùng để nạp cho vi xử lý tập tin DSI dùng để xem chạy kiểm tra bước - chương trình mô Đối với mạch vi xử lý phần mềm không ngừng cung cấp hình ảnh thực tế linh kiện xuất mà cung cấp cho người lập trình nhiều sổ thông báo - nội dung nhớ , trỏ, ghi,… Proteus VSM có thư viện lớn với 6000 linh kiện loại ngày bổ sung Ngoài có ma trận phím tạo đơn giản (keypad) cho người thiết kế cần thao tác ma trận phím - 1.2.2.Khả Năng Ứng Dụng Khả ứng dụng phần mềm mô phỏng, phân tích kết từ mạch nguyên lý Giúp người dùng thấy trước kết mạch thiết kế - hay sai trước thiết kế bo mạch Được ứng dụng nhiều giảng dạy nghiên cứu kỹ thuật điện tử Phần mềm dễ tiếp nhận ,dễ dàng tự học, tự nghiên cứu nên được sử dụng rộng rãi • • • • • - 1.2.3.Khả Năng Phân Tích Phân tích mạch đơn giản Phân tích mạch họ vi xử lý Phân tích mạch qua đồ thị , máy đo như: Phân tích Analogue Phân tích Digital Phân tích tần số Phân tích âm Phân tích truyền phát liệu Phân tích tải, áp… Phần mềm giúp người sử dụng phân tích, hình dung tải ảnh hưởng đến linh kiện tránh chi - phí thay hư hỏng an toàn Lưu lại kết phân tích - 1.2.4.Nhược Điểm Do phần mềm công ty nước sản xuất nên tính quyền cao Trong thiết kế phần mềm chạy không theo quy tắc làm người sử dụng - đôi lúc gặp khó khăn Tài liệu hướng dẫn đa số tiếng anh nên đòi hỏi người dùng phải phải có tảng tiếng anh tốt muốn nghiên cứu chuyên sâu CHƯƠNG 2: HƯỚNG DẪN SỬ DỤNG PHẦN MỀM MÔ PHỎNG PROTEUS - 2.1 Khởi Động Chương Trình Start > All Programs > Proteus Professional > ISIS Professional Để mở nhanh ta kéo biểu tượng phần mềm mô Proteus hình Desktop để mở nhanh Hình 2.1: Biểu tượng để mở nhanh phần mềm mô Proteus hình - Desktop Cửa sổ chương trình sau khởi động: T h Vùng hiển thị tổng quan Thanh trình đơn Thanh công cụ Vùng chọn linh kiện Các nút điều khiển mô Vùng làm việc Hình 2.1 : Giao diện phần mềm mô Proteus - 2.2.Giao Diện Chương Trình Thanh trình đơn: Bao gồm Menu quen thuộc File,View, Edit ta thực hầu hết - lệnh ISIS (trừ lệnh công cụ) Thanh tác vụ : Chứa số lệnh trình đơn dạng shortcut New, Open, Save, Print nút: Biểu tượng icon Chức Làm tươi hình thiết kế Bật/ Tắt ô lưới cho vẽ Chọn gốc tọa độ Các công cụ phóng to, thu nhỏ, toàn mạch Undo/Redo Cắt, chép, dán Các lệnh tác động lên đối tượng chọn trước Các công cụ chỉnh sửa , tạo thư viện linh kiện Bật/ Tắt chế độ tự dây sơ đồ nguyên lý Tìm kiếm linh kiện Các thiết bị ảo - Vùng hiển thị tổng quan: Hiện thị khái quát vùng làm việc hành, khung màu xanh dương biểu thị cho toàn vẽ, phần xanh biểu thị cho phần vẽ hiển thị vùng làm việc Khi ta chọn linh kiện, ký hiệu nguyên lý hiển thị - lên vùng Vùng làm việc : Đây nơi thực toàn thao tác để hoàn thành vẽ 2.3.Các Thao Tác Thiết Kế Cơ Bản 2.3.1 Tạo Trang Thiết Kế Mới - Để tạo trang thiết kế mạch ta làm theo cách sau: • Từ trình đơn chọn File > New Design • Hoặc chọn biểu tượng new design tác vụ 2.3.2.Cách Chọn Linh Kiện Trong Thư Viện - Cách mở thư viện linh kiện: • Ta dùng phím tắt P để mở thư viện Sau chọn mở cửa sổ thư viện cửa sổ xuất sau: Hình 2.2: Cửa sổ thư viện lấy linh kiện - Trong đó: Keyword : tìm kiếm linh kiện theo tên đánh vào Category Sub-catelogy : chứa thư viện chương trình Proteus Result : thị linh kiện chọn thư viện hay đánh tên mục Keyword Schematic Preview : hiển thị hình dạng linh kiện PCD Preview : hiển thị sơ đồ chân linh kiện Cách tìm chọn linh kiện thư viện vào cửa sổ Devices: Sau mở thư viện xong, để lấy linh kiện thư viện vào cửa sổ Devices ta thực theo cách sau: Cách 1: Ta đánh xác tên linh kiện vào Keywords (Proteus có khả dò tìm không xác nhớ đầy đủ) cho tất linh kiện có tên gần cho lựa chọn 10 lcd_gotoxy(0,1); lcd_putsf("Toc do:v= v/ph"); hienthiv(a,9); PORTD=Phai[i]; delay_ms(a); } } } void chayphailui(int lan) {for(k=0;k=0;i ) { lcd_clear(); lcd_gotoxy(1,0); lcd_putsf("Lui sang phai"); lcd_gotoxy(0,1); lcd_putsf("Toc do:v= v/ph"); hienthiv(a,9); PORTD=Phai[i]; delay_ms(a); } } } void chaytrailui(int lan) {for(k=0;k=0;i ) {lcd_clear(); lcd_gotoxy(1,0); lcd_putsf("Lui sang trai"); lcd_gotoxy(0,1); lcd_putsf("Toc do:v= v/ph"); hienthiv(a,9); PORTD=Trai[i]; delay_ms(a); } } } void hienthiv(unsigned char a, int u) { int x,y,z, data; data=60/(200*a*0.001); x=((data/100)+48); 27 y=(((data%100)/10)+48); z=(((data%100)%10)+48); lcd_gotoxy(u,1); lcd_putchar(x); lcd_gotoxy(u+1,1); lcd_putchar(y); lcd_gotoxy(u+2,1); lcd_putchar(z); } void tudong() {while(1) { if(b==1){stop();break;} a=tmin; switch(PINA) {// -trang thai chi mot bong sang case (0x01): chayphai(buocline); break; //0000|0001| case (0x02): chayphai(buocline); break; //0000|0010| case (0x04): chayphai(buocline); break; //0000|0100| case (0x10): chaytrai(buocline); break; //0001|0000| case (0x20): chaytrai(buocline); break; //0010|0000| case (0x40): chaytrai(buocline); break; //0100|0000| // trang thai bong sang lien -case (0x03): chayphai(buocline); break; //0000|0011| case (0x06): chayphai(buocline); break; //0000|0110| case (0x0C): chayphai(buocline); break; //0000|1100| case (0x30): chaytrai(buocline); break; //0011|0000| case (0x60): chaytrai(buocline); break; //0110|0000| case (0xC0): chaytrai(buocline); break; //1100|0000| // trang thai bong sang cách -case (0x05): chayphai(buocline); break; //0000|0101| case (0x0A): chayphai(buocline); break; //0000|1010| case (0x14): chayphai(buocline); break; //0001|0100| case (0x28): chaytrai(buocline); break; //0010|1000| case (0x50): chaytrai(buocline); break; //0101|0000| case (0xA0): chaytrai(buocline); break; //1010|0000| // -trang thai bong sang lien case (0x07): chayphai(buocline); break; //0000|0111| case (0x0E): chayphai(buocline); break; //0000|1110| case (0x1C): chayphai(buocline); break; //0001|1100| case (0x38): chaytrai(buocline); break; //0011|1000| case (0x70): chaytrai(buocline); break; //0111|0000| case (0xE0): chaytrai(buocline); break; //1110|0000| // trang thai mac dinh default : a=tmax;chaytien(2); break; } } } 28 void main(void) { khaibao(); while (1) { a=ttb; chaohoi(); switch(PINC) { case (0xFE): chaytien(buoc); break; //1111|1110 case (0xFB): chaylui(buoc); break; //1111|1011 case (0xFD): chayphai(buoc); break; //1111|1101 case (0xF7): chaytrai(buoc); break; //1111|0111 case (0xf9): chayphailui(buoc); break; //1111|1001 case (0xf3): chaytrailui(buoc); break; //1111|1001 // -tang case (0x7E): a=tmin;chaytien(10); break; //1111|1110 case (0x7B): a=tmin;chaylui(10); break; //1111|1011 // giam -case (0xDE): a=tmax;chaytien(buoc); break; //1111|1110 case (0xDB): a=tmax;chaylui(buoc); break; //1111|1011 // -chay tu dong case (0xef): {tudong();break;} //1110|1111 } } } 3.2 Mô đo nhiệt độ giao tiếp với máy tính a Mô Để thiết kế sơ đồ mô với yêu cầu ta tiến hành theo bước sau: Bước 1: Vào thư viện lấy vi điều khiển ATMEGA16, L298, điện trở (Resistors), Cổng COM, LCD 16x2, biến trở,LM35 Bước 2: Các linh kiện chọn nằm cửa sổ DEVICES, ta click vào linh kiện cần chọn click vào trang thiết kế để vẽ mạch Để lấy nguồn cho mạch ta vào biểu tượng Sau cửa sổ DEVICES ta chọn Power click vào trang thiết kế Sau ta tiến hành nối dây linh kiện ta hình sau 29 Hình 3.1: Trang thiết kế sau chọn linh kiện Bước 3: Nạp chương trình cho vi điều khiển ta làm tương tự ví dụ Bước 4: Sau nối mạch xong ta tiến hành mô mạch cách sử dụng nút bấm điều khiểu mô : Từ việc quan sát mô ta biết nhiệt độ phòng thời Từ đó, đưa giải pháp điều hòa nhiệt độ cho phòng Với truyền thông giúp ta biết nhiệt độ phòng mà không cần trực tiếp đến tận nơi 30 Hình 3.3: Minh họa chạy mô đo nhiệt độ phòng truyền liệu máy tính cá nhân b Code lập trình vi điều khiển #include #include #include #include #define ADC_VREF_TYPE 0xe0 void khaibao(); unsigned char read_adc(unsigned char adc_input) { ADMUX=adc_input | (ADC_VREF_TYPE & 0xff); // Delay needed for the stabilization of the ADC input voltage delay_us(10); // Start the AD conversion ADCSRA|=0x40; // Wait for the AD conversion to complete while ((ADCSRA & 0x10)==0); ADCSRA|=0x10; return ADCH; 31 } void temp(unsigned char z){ char LCD_Buffer[3]; lcd_gotoxy(0,1); lcd_putsf("Nhiet ="); lcd_gotoxy(14,1); lcd_putsf("oC"); lcd_gotoxy(11,1); sprintf(LCD_Buffer,"%d",z); lcd_puts(LCD_Buffer); puts(LCD_Buffer); } void main(void) { khaibao(); lcd_init(16); lcd_gotoxy(0,0); 32 lcd_puts("Do nhiet "); delay_ms(2000); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("D7CNTD1_Haivuepu"); while (1) { lcd_gotoxy(0,1); temp(read_adc(3)); } } void khaibao() { // Declare your local variables here // Input/Output Ports initialization // Port A initialization // Func7=Out Func6=Out Func5=Out Func4=Out Func3=In Func2=Out Func1=Out Func0=Out // State7=0 State6=0 State5=0 State4=0 State3=T State2=0 State1=0 State0=0 33 PORTA=0x00; DDRA=0xF7; // Port B initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTB=0x00; DDRB=0x00; // Port C initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTC=0x00; DDRC=0x00; // Port D initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTD=0x00; DDRD=0x00; // Timer/Counter initialization 34 // Clock source: System Clock // Clock value: Timer Stopped // Mode: Normal top=0xFF // OC0 output: Disconnected TCCR0=0x00; TCNT0=0x00; OCR0=0x00; // Timer/Counter initialization // Clock source: System Clock // Clock value: Timer1 Stopped // Mode: Normal top=0xFFFF // OC1A output: Discon // OC1B output: Discon // Noise Canceler: Off // Input Capture on Falling Edge // Timer1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off TCCR1A=0x00; TCCR1B=0x00; 35 TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; // Timer/Counter initialization // Clock source: System Clock // Clock value: Timer2 Stopped // Mode: Normal top=0xFF // OC2 output: Disconnected ASSR=0x00; TCCR2=0x00; TCNT2=0x00; OCR2=0x00; // External Interrupt(s) initialization // INT0: Off // INT1: Off 36 // INT2: Off MCUCR=0x00; MCUCSR=0x00; // Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00; // USART initialization // Communication Parameters: Data, Stop, No Parity // USART Receiver: On // USART Transmitter: On // USART Mode: Asynchronous // USART Baud Rate: 2400 UCSRA=0x00; UCSRB=0x18; UCSRC=0x86; UBRRH=0x00; UBRRL=0x19; // Analog Comparator initialization // Analog Comparator: Off // Analog Comparator Input Capture by Timer/Counter 1: Off 37 ACSR=0x80; SFIOR=0x00; // ADC initialization // ADC Clock frequency: 7.813 kHz // ADC Voltage Reference: AVCC pin // ADC Auto Trigger Source: ADC Stopped // Only the most significant bits of // the AD conversion result are used ADMUX=ADC_VREF_TYPE & 0xff; ADCSRA=0x86; // SPI initialization // SPI disabled SPCR=0x00; // TWI initialization // TWI disabled TWCR=0x00; // Alphanumeric LCD initialization // Connections specified in the 38 // Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu: // RS - PORTA Bit // RD - PORTA Bit // EN - PORTA Bit // D4 - PORTA Bit // D5 - PORTA Bit // D6 - PORTA Bit // D7 - PORTA Bit // Characters/line: 16 } 39 CHƯƠNG 4: KẾT LUẬN VÀ PHƯƠNG HƯỚNG PHÁT TRIỂN KẾT LUẬN Từ việc mô proteus ta giúp chúng ta: - Có thể kiểm tra cách điều khiển đối tượng theo ý muốn chưa.(Cụ thể ví dụ việc lập trình theo chuẩn ý muốn chưa) Có sai số phần cứng không đo lường kiểm tra mô phỏng, giúp thiết bị thực giảm sai số đến mức tối đa Cả ví dụ em làm thực tế nên việc mô em thấy quan trọng việc điều khiển 2.PHƯƠNG HƯỚNG PHÁT TRIỂN - Từ việc mô giúp cho phát triển mô hình lớn cách thuận tiện - Giúp lường trước sai số từ tính toán để thêm bù nhiễu , sai số vào 40 TÀI LIỆU THAM KHẢO Ngô Diên Tập, 2003 Kỹ thuật vi điều khiển với AVR Hà Nội Nhà xuất Khoa Học – Kĩ Thuật Trang wed: hocavr.com số trang chia sẻ khác 41 [...]... kì làm mẫu • Di chuyển chuột tới các chân tiếp theo và click liên tiếp hai lần dây sẽ tự động được nối 2.3.5 Mô Phỏng Mạch Thiết Kế Để mô phỏng ta có thể sử dụng các công cụ mô phỏng như: - Tăm dò điện áp và dòng điện: Để sử dụng tăm dò vào sơ đồ mạch thì ta click chuột vào biểu tượng (Voltage Probe Mode) hay biểu tượng ( Curent Probe Mode) Rồi click vào dây dẫn muốn đặt Chú ý: khi đặt tăm dò dòng điện... tín hiệu Click chuột phải vào Graph hoặc ctrl T và chọn Add Traces Xuất hiện cửa sổ Add Transient Trace Hình 2.16: Cửa sổ Add Transient Trace Probe P1 P4 là nguồn cung cấp Exprossion là nguồn cung cấp được chọn để biểu diễn Để mô phỏng Graph, ta nhấn phím Space ở bàn phím ta có kết quả mô phỏng là: 20 Hình 2.17: Kết quả mô phỏng tín hiệu analogue Chú ý : để thực hiện mô phỏng các tín hiệu khác ta... PHẦN MỀM MÔ PHỎNG PROTEUS 3.1 Mô phỏng mạch điều khiển tốc độ động cơ bước tăng, giảm, nhanh, chậm Để thiết kế được sơ đồ mô phỏng với yêu cầu như trên ta tiến hành theo các bước sau: Bước 1: Vào thư viện lấy vi điều khiển ATMEGA16, L298, điện trở (Resistors), step motor, button, LCD 16x2, biến trở Bước 2: Các linh kiện được chọn nằm trong cửa sổ DEVICES, ta click vào linh kiện cần chọn và click vào trang... Component 22 Hình 3.2: Hướng dẫn nạp mạch Bước 4: Sau khi nối mạch xong ta tiến hành mô phỏng mạch bằng cách sử dụng các nút bấm điều khiểu mô phỏng : Khi mô phỏng ta có thể quan sát được các trạng thái làm việc của các port dựa vào tín hiệu đèn xanh đỏ nhấp nháy, đồng thời quan sát được các xung bằng OSC Hình 3.3: Minh họa chạy mô phỏng điều khiển động cơ bước 23 - code điều khiển của vi điều khiển #include... {tudong();break;} //1110|1111 } } } 3.2 Mô phỏng đo nhiệt độ giao tiếp với máy tính a Mô phỏng Để thiết kế được sơ đồ mô phỏng với yêu cầu như trên ta tiến hành theo các bước sau: Bước 1: Vào thư viện lấy vi điều khiển ATMEGA16, L298, điện trở (Resistors), Cổng COM, LCD 16x2, biến trở,LM35 Bước 2: Các linh kiện được chọn nằm trong cửa sổ DEVICES, ta click vào linh kiện cần chọn và click vào trang thiết kế để vẽ mạch... nguồn cho mạch ta vào biểu tượng Sau đó trong cửa sổ DEVICES ta chọn Power và click vào trang thiết kế Sau đó ta tiến hành nối dây linh kiện ta được như hình sau Hình 3.1: Trang thiết kế sau khi đã chọn linh kiện và nối dây theo nguyên lý hoạt động tìm hiểu được Bước 3: Nạp chương trình cho vi điều khiển Để nạp ta click đúp chuột trái vào vi điều khiển để mở cửa sổ Edit Component 22 Hình 3.2: Hướng... cho mạch ta vào biểu tượng Sau đó trong cửa sổ DEVICES ta chọn Power và click vào trang thiết kế Sau đó ta tiến hành nối dây linh kiện ta được như hình sau 29 Hình 3.1: Trang thiết kế sau khi đã chọn linh kiện Bước 3: Nạp chương trình cho vi điều khiển thì ta làm tương tự như ví dụ trên Bước 4: Sau khi nối mạch xong ta tiến hành mô phỏng mạch bằng cách sử dụng các nút bấm điều khiểu mô phỏng : Từ việc... thời gian, đếm xung và tần số Nó có 3 ngõ vào và hiển thị tới 99.999.999 Chân CLK: nối với đường tín hiệu cần đo Chân CE: chân cho phép tác động ở mức cao Chân RST : chân Reset Khi có tác động ở mức cao thì các số hiển thị đều trở về 0 Hình 2.10: Công cụ Counter Timer Để thay đổi các đại lượng cần đo đếm và các mức tích cực của các chân CE, RST ta vào Edit Component 17 Hình 2.11: Minh họa thay... lượng cần đo và mức tích cực AC – DC Voltmeter or Ampemeter: Hình 2.12: Các công cụ đo dòng, áp của nguồn một chiều và xoay chiều Công cụ được sử dụng ở đây là các Vôn kế và Ampe kế đo điện xoay chiều và một chiều với các lựa chọn đơn vị : micro volt, mili volt , volt hay micro ampe, mili ampe, ampe Nó được nối vào mạch giống như các linh kiện khác Và có thể thay đổi thông số bằng cách vào cửa sổ Edit... xoay các linh kiện để tìm ra phương án tối ưu nhất Để xoay các linh kiện ta có các cách sau: Cách 1: Click chuột phải vào linh kiện cần xoay (chọn linh kiện) Xuất hiện tab ta bấm chọn các biểu tượng xoay như hình 2.9 Hình 2.4: Minh họa các biểu tượng xoay linh kiện Cách 2: Click chuột phải vào linh kiện cần xoay Bấm chọn các biểu tượng xoay ở thanh công cụ như hình 2.10 12 Hình 2.5: Minh họa các