Đồ án Nghiên cứu chế tạo thiết bị kiểm định đẩy kéo (Phần 1)

pdf 22 trang phuongnguyen 120
Bạn đang xem 20 trang mẫu của tài liệu "Đồ án Nghiên cứu chế tạo thiết bị kiểm định đẩy kéo (Phần 1)", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfdo_an_nghien_cuu_che_tao_thiet_bi_kiem_dinh_day_keo_phan_1.pdf

Nội dung text: Đồ án Nghiên cứu chế tạo thiết bị kiểm định đẩy kéo (Phần 1)

  1. BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM KHOA ĐIỆN-ĐIỆN TỬ ĐỒ ÁN TỐT NGHIỆP NGÀNH KỸ THUẬT ĐIỆN TỬ - TRUYỂN THÔNG NGHIÊN CỨU CHẾ TẠO THIẾT BỊ KIỂM ĐỊNH ĐẨY KÉO GVHD: THS. NGUYỄN THANH BÌNH SVTH: NGUYỄN TRƯỜNG HIẾU MSSV: 12341037 SVTH: LÂM CHÁNH AN MSSV: 12341001 SKL003072 Tp. Hồ Chí Minh, tháng 07/2014
  2. BỘ GIÁO DỤC & ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH KHOA ĐIỆN – ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ-CÔNG NGHIỆP ĐỒ ÁN TỐT NGHIỆP NGÀNH KỸ THUẬT ĐIỆN TỬ - TRUYỀN THÔNG ĐỀ TÀI: NGHIÊN CỨU CHẾ TẠO THIẾT BỊ KIỂM ĐỊNH ĐẨY KÉO GVHD : Th.SNguyễn Thanh Bình SVTH : NguyễnTrường Hiếu MSSV : 12341037 SVTH : Lâm Chánh An MSSV : 12341001 Tp. HồChí Minh - 07/2014
  3. BỘ GIÁO DỤC & ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH KHOA ĐIỆN – ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ-CÔNG NGHIỆP ĐỒ ÁN TỐT NGHIỆP NGÀNH KỸ THUẬT ĐIỆN TỬ - TRUYỀN THÔNG ĐỀ TÀI: NGHIÊN CỨU CHẾ TẠO THIẾT BỊ KIỂM ĐỊNH ĐẨY KÉO GVHD : Th.SNguyễn Thanh Bình SVTH : NguyễnTrường Hiếu MSSV : 12341037 SVTH : Lâm Chánh An MSSV : 12341001 Tp. HồChí Minh - 07/2014
  4. PHẦN B NỘI DUNG
  5. Nghiên cứu chế tạo thiết bị kiểm định đẩy kéo CHƯƠNG I: DẪN NHẬP Chương I: Dẫn nhập Trang 1
  6. Nghiên cứu chế tạo thiết bị kiểm định đẩy kéo 1.1. Đặt vấn đề Theo thống kê các sản phẩm điện tử hiện nay có tuổi thọ sử dụng ngày càng thấp, một phần là do cách sử dụng, phần còn lại là do chất lượng của sản phẩm, với sự cạnh tranh hiện nay các mặt hàng thường chạy theo thị trường, dẫn đến việc hàng giả, hàng nhái tràn lan, làm giảm chất lượng của sản phẩm. Để phục vụ cho người tiêu dùng, việc thiết kế một thiết bị kiểm định chất lương là một việc cần thuyết, sát với thực tiễn. Chính vì vậy việc ra đời một “thiết bị kiểm định đẩy kéo” và đã thể hiện được vai trò tương đối đầy đủ nhất, giúp cho người sử dụng sản phẩm cảm thấy yên tâm và linh hoạt hơn trong việc kiểm tra chất lượng cũng như có những cách giải quyết nhanh nhất, hợp lý nhất khi có sự cố xảy ra. “Thiết bị kiểm định đẩy kéo”mà nhóm đã nghiên cứu và cho ra đời có thể nói là tương đối ổn định và phù hợp với yêu cầu thực tiễn ngày nay cho các giải pháp kiểm định chất lượng của một sản phẩm, bên cạnh đó hệ thống cũng đáp ứng được yêu cầu về kỹ thuật, chất lượng cũng như độ an toàn tin cậy cho việc kiểm định chất lượng. 1.2. Mục tiêu đề tài Thiết kế, thi công, điều khiển và kiểm định các thiết bị yêu cầu thực hiện đẩy kéo. Hệ thống tập trung hóa và đơn giản hóa việc kiểm định chất lượng của những sản phẩm yêu cầu thực hiện việc đẩy kéo nhiều lần như cửa của các thiết bị ví dụ như cửa tủ lạnh, cửa lò vi ba hay đơn giản là viêc đóng mở màn hình laptop với chi phí thấp và tiết kiệm năng lượng, đảm bảo an toàn cho người sử dụng khi có mặt ở nơi kiểm định cũng như khi vắng mặt, đảm bảo được độ chính xác của viêc kiểm định. 1.3. Giới hạn đề tài . Trong đề tài này, sử dụng các phương thức giao tiếp giữa các module thông qua các bus cắm và hệ thống dây dẫn. . Các thông tin được hiển thị lên màn hình LCD 20X4. . Thi công hệ thống trên mô hình mẫu. . Sử dụng các linh kiện, các module có sẵn trên thị trường. . Thông tin hoạt động của hệ thống được gửi qua tin nhắn. . Sử dụng khí nén thực hiện việc đẩy kéo thực hiện kiểm định lò sóng, lò nướng. 1.4. Tình hình nghiên cứu Nhìn chung, hiện nay ở Việt Nam có rất nhiều trung tâm kiểm định chất lượng, nhưng với sự phát triển về công nghệ, cũng như sự ra đời một cách chóng mặt của các sản phẩm, việc kiểm định sẽ gặp những khó khăn nhất định. 1.5. Phương pháp nghiên cứu Phương pháp nghiên cứu đề tài là kết hợp các module sim900, ic đồng hồ thời gian thực Ds1307 và vi điều khiển PIC16F887. Hai phương pháp nghiên cứu được sử dụng chủ yếu trong đề tài là phương pháp tham khảo tài liệu và phương pháp thực nghiệm. Chương I: Dẫn nhập Trang 2
  7. Nghiên cứu chế tạo thiết bị kiểm định đẩy kéo . Phương pháp tham khảo tài liệu tập trung vào các vấn đề: tìm hiểu công nghệ truyền dữ liệu, họ vi điều khiển PIC và công nghệ truyền không dây GSM. Điều khiển khí nén. . Phương pháp thực nghiệm được sử dụng để kiểm tra lại những kiến thức tham khảo và bản thiết kế thi công. Hai phương pháp này được thực hiện đan xen lẫn nhau. Khi thực nghiệm cho kết quả chưa mong muốn thì quay lại tham khảo thêm tài liệu và thực nghiệm lại cho đến khi đạt được kết quả mong muốn. 1.6. Phương tiện nghiên cứu Nhóm thực hiện xây dựng phương án tiến hành công việc dựa trên những phương tiện vật chất sẵn có : máy vi tính, mạng internet, các tài liệu tham khảo, các dụng cụ làm mạch điện. Phần mềm lập trình. 1.7. Đối tượng nghiên cứu Kỹ thuật lập trình CCS, kỹ thuật lập trình mikroC và giao tiếp giữa vi điều khiển với các thiết bị ngoại vi là các module sim900, các linh kiện điện tử. Các cơ cấu truyền động khí nén. 1.8. Kế hoạch nghiên cứu Ngày nhận đề tài: 01/04/2014. Ngày nộp đề tài: 12/07/2014. Để hoàn thành đề tài đúng tiến độ, người thực hiện đề tài định sẵn kế hoạch thực hiện theo từng giai đoạn trong toàn quỹ thời gian như sau: . Thu thập tài liệu: từ ngày 01/04/2014 đến 15/04/2014. . Thiết kế sơ đồ nguyên lý: từ ngày 16/04/2014 đến 30/04/2014. . Thi công phần cứng: từ ngày 01/05/2014 đến 16/05/2014. . Thiết kế phần mềm: từ ngày 17/05/2014 đến 31/05/2014. . Thiết kế mô hình: từ ngày 01/06/2014 đến 13/06/2014. . Chạy thử nghiêm và khắc phục sai xót: từ ngày 14/06/2014 đến 30/06/2014. . Làm báo cáo lý thuyết: từ ngày 01/07/2013 đến 12/07/2014. 1.9. Ý nghĩa thực tiễn Việc nghiên cứu và chế tạo thành công một thiết bị kiểm định đẩy kéo là một trong những bước ngoặt lớn trong viêc giải quyết các vấn đề về kiểm định chất lượng hiện nay. Tìm hiểu và nghiên cứu về lĩnh vực kiểm định chất lượng để ứng dụng vào các yêu cầu thực tiễn nhằm làm chủ được công nghệ và tiết kiệm được chi phí là một yêu cầu cấp thiết cần thực hiện. Xây dựng được một hệ thống thống nhất, giá thành rẻ, an toàn và phù hợp với mọi thiết bị, sản phẩm cần kiểm định Đề tài này cũng giúp nhóm nghiên cứu có cái nhìn trực quan hơn với những kiến thức đã được học, từ đó nâng cao thêm hiệu quả học tập, nghiên cứu. Đề tài này sẽ rút ngắn thời gian tìm hiểu và rút ngắn khoảng cách giữa lý thuyết và thực tiễn. Chương I: Dẫn nhập Trang 3
  8. Nghiên cứu chế tạo thiết bị kiểm định đẩy kéo CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Chương 2: Cơ sở lý thuyết Trang 4
  9. Nghiên cứu chế tạo thiết bị kiểm định đẩy kéo 2.1. Giới thiệu về vi điều khiển PIC16F887 2.1.1. Sơ đồ chân PIC16F887 Hình 2.1.1 Sơ đồ chân VĐK PIC16F887 Chương 2: Cơ sở lý thuyết Trang 5
  10. Nghiên cứu chế tạo thiết bị kiểm định đẩy kéo 2.1.2. Sơ đồ khối PIC16F887 Hình 2.1.2 Sơ đồ khối VĐK PIC16F887 2.1.3. Một vài thông số của vi điều khiển PIC16F887 Đây là vi điều khiển thuộc họ PIC16Fxxx với tập lệnh gồm 35 lệnh có độ dài 14 bit. Mỗi lệnh đều được thực thi trong một chu kì xung clock. Tốc độ hoạt động tối đa cho phép là 20 MHz với một chu kì lệnh là 200ns. Bộ nhớ chương trình 8Kx14 bit, bộ nhớ dữ liệu 368x8 byte RAM và bộ nhớ dữ liệu EEPROM với dung lượng 256x8 byte. Số PORT I/O là 5 với 33 pin I/O. Các đặc tính ngoại vi bao gồm các khối chức năng sau: . Timer0: bộ đếm 8 bit với bộ chia tần số 8 bit. Chương 2: Cơ sở lý thuyết Trang 6
  11. Nghiên cứu chế tạo thiết bị kiểm định đẩy kéo . Timer1: bộ đếm 16 bit với bộ chia tần số, có thể thực hiện chức năng đếm dựa vào xung clock ngoại vi ngay khi vi điều khiển hoạt động ở chế độ sleep. . Timer2: bộ đếm 8 bit với bộ chia tần số, bộ postcaler. . Hai bộ Capture /so sánh / điều chế độ rông xung. . Các chuẩn giao tiếp nối tiếp SSP (Synchronous Serial Port), SPI và I2C. . Chuẩn giao tiếp nối tiếp USART với 9 bit địa chỉ. . Cổng giao tiếp song song PSP (Parallel Slave Port) với các chân điều khiển RD, WR, CS ở bên ngoài. . Các đặc tính Analog. 8 kênh chuyển đổi ADC 10 bit. . Bên cạnh đó là một vài đặc tính khác của vi điều khiển như: + Bộ nhớ flash với khả năng ghi xóa được 100.000 lần. + Bộ nhớ EEPROM với khả năng ghi xóa được 1.000.000 lần. + Dữ liệu bộ nhớ EEPROM có thể lưu trữ trên 40 năm. + Khả năng tự nạp chương trình với sự điều khiển của phần mềm. Nạp được chương trình ngay trên mạch điện ICSP (In Circuit Serial Programming) thông qua 2 chân. Watchdog Timer với bộ dao động trong. + Chế độ Sleep. + Có thể hoạt động với nhiều dạng Oscillator khác nhau. 2.1.4. Tổ chức bộ nhớ - thanh ghi . Bộ nhớ: Bộ nhớ chương trình của PIC16F887 có dung lượng 8k được chia làm 4 trang bộ nhớ, mỗi trang 2k. Thanh ghi bộ đếm chương trình PC sẽ quản lý địa chỉ của bộ nhớ chương trình, thanh ghi PC có độ dài 13bit sẽ quản lý 8192 ô nhớ tương đương với 8k ô nhớ. Mỗi ô nhớ chương trình lưu 14bit dữ liệu.Khi PC bị reset thì thanh ghi PC có gí trị là 000H và PIC sẽ bắt đầu thực hiện chương trình tại địa chỉ 0000H. Khi có bất kỳ ngắt nào tác động thì PIC sẽ thực hiện chương trình phục vụ ngắt tại địa chỉ 0004H. Mỗi trang của bộ nhớ chương trình có địa chỉ xác định, việc phân chia theo trang bô nhớ chỉ có tác dụng đối với lệnh nhảy và lệnh gọi chương trình con. Khi nơi nhảy đến hoặc khi gọi chương trình con nằm trong cùng 1 trang thì lệnh sẽ viết ngắn gọn hơn, mã lệnh ít hơn so với trường hợp nằm khác trang. Bộ nhớ dữ liệu của PIC16F887 được chia ra làm 4 bank. Mỗi bank có dung lượng 128 byte, bao gồm các thanh ghi có chức năng đặc biệt SFG nằm ở các vùng địa chỉ thấp và các thanh ghi mục đích chung GPR nằm ở vùng địa chỉ còn lại trong bank. Các thanh ghi SFR thường xuyên được sử dụng (ví dụ như thanh ghi STATUS) sẽ được đặt ở tất cả các bank của bộ nhớ dữ liệu giúp thuận tiên trong quá trình truy xuất và làm giảm bớt lệnh của chương trình. Trong các họ vi điều khiển khác thì bộ nhớ ngăn xếp dung chung với bộ nhớ dữ liệu, ưu điểm là cấu trúc đơn giản, khuyết điểm là việc dùng chung nếu không biết giới hạn sẽ lấn chiếm lẫn nhau và làm mất dữ liệu lưu trong bộ nhớ ngăn xếp và chương trình thực thi sai. Ở vi điều khiển PIC thì nhà thiết kế tách bộ nhớ ngăn xếp độc lập với bộ nhớ dữ liệu và chỉ để dùng lưu địa chỉ trở về khi thực hiện lệnh gọi chương trình con và khi thực hiện ngắt. Dung lượng bộ nhớ ngăn xếp chỉ có 8 ô nhớ từ stack level 1 đến stack Chương 2: Cơ sở lý thuyết Trang 7
  12. Nghiên cứu chế tạo thiết bị kiểm định đẩy kéo level 8. Do chỉ có 8 ô nhớ nên khi thực hiện các chương trình con lồng vào nhau tối đa là 8 cấp. Do lưu địa chỉ trở về trong thanh ghi PC, mà thanh ghi PC có chiều dài 13bit nên mỗi ô nhớ ngăn xếp có số bit là 13. Đây là các thanh ghi được sử dụng bởi CPU hoặc được dùng để thiết lập và điều khiển các khối chức năng được tích hợp bên trong vi điều khiển. Có thể phân thanh ghi SFR làm hai loại: thanh ghi SFR liên quan đến các chức năng bên trong (CPU)và thanh ghi SRF dùng để thiết lập và điều khiển các khối chức năng bên ngoài (vídụ như ADC, PWM, ). Phần này sẽ đề cập đến các thanh ghi liên quan đến các chức năng bên trong. Các thanh ghi dùng để thiết lập và điều khiển các khối chức năng sẽ được nhắc đến khi ta đề cập đến các khối chức năng đó. Sơ đồ cụ thể như sau: Hình 2.1.3 Sơ đồ bộ nhớ dữ liệu của PIC16F887 Chương 2: Cơ sở lý thuyết Trang 8
  13. Nghiên cứu chế tạo thiết bị kiểm định đẩy kéo + Thanh ghi STATUS (03h, 83h, 103h, 183h):thanh ghi chứa kết quả thực hiện phép toán của khối ALU, trạng thái reset và các bit chọn bank cần truy xuất trong bộ nhớ dữ liệu. Hình 2.1.4 Thanh ghi STATUS. + Thanh ghi OPTION_REG (81h, 181h): thanh ghi này cho phép đọc và ghi,cho phép điều khiển chức năng pull-up của các chân trong PORTB, xác lập các tham số về xung tác động, cạnh tác động của ngắt ngoại vi và bộ đếm Timer0. Hình 2.1.5 Thanh ghi OPTION_REG. + Thanh ghi PIE1 (8Ch): chứa các bit điều khiển chi tiết các ngắt của các khối chức năng ngoại vi. Hình 2.1.6 Thanh ghi PIE1. + Thanh ghi PIR1 (0Ch) chứa cờ ngắt của các khối chức năng ngoại vi, các ngắt này được cho phép bởi các bit điều khiển chứa trong thanh ghi PIE1. Hình 2.1.7 Thanh ghi PIR1. + Thanh ghi PIE2 (8Dh): chứa các bit điều khiển các ngắt của các khối chức năng CCP2, SSP bus, ngắt của bộ so sánh và ngắt ghi vào bộ nhớ EEPROM. Hình 2.1.8 Thanh ghi PIE2. + Thanh ghi PCON (8Eh): chứa các cờ hiệu cho biết trạng thái các chế độ reset của vi điều khiển. Hình 2.1.9 Thanh ghi PCON Chương 2: Cơ sở lý thuyết Trang 9
  14. Nghiên cứu chế tạo thiết bị kiểm định đẩy kéo + Thanh ghi mục đích chung GPR: Các thanh ghi này có thể được truy xuất trực tiếp hoặc gián tiếp thông qua thanh ghi FSG (File Select Register). Đây là các thanh ghi dữ liệu thông thường, người sử dụng có thể tùy theo mục đích chương trình mà có thể dung các thanh ghi này để chứa các biến số, hằng số, kết quả hoặc các tham số phục vụ cho chương trình. 2.1.5. Port xuất nhập . Port A: Port A gồm 6 chân từ RA0 đến RA5. Việc ghi giá trị vào thanh ghi TRISA sẽ quy định các chân của Port A là input hay output (nếu là 1 thì là input, là output nếu là 0). Việc đọc thanh ghi Port A sẽ đọc trạng thái của các chân ở Port A. Việc ghi giá trị vào thanh ghi Port A sẽ thay đổi trạng thái của các chân Port A. Riêng chân RA4 được tích hợp chức năng nhận xung clock ngoài cho Timer0 (RA4/T0CKI).Những chân khác của Port A được đa hợp với các chân ngõ vào Analog của ADC và chân ngõ vào điện thế so sánh của bộ so sánh Comparator. Hoạt động của những chân này được quy định bằng những bit tương ứng trong các thanh ghi ADCCON1 và CMCON1. Khi các chân của Port A được sử dụng làm ngõ vào Analog thì các bit trong thanh ghi TRISA phải được set bằng 1. . Port B: Port B gồm 8 chân từ chân RB0-RB7. Việc ghi giá trị vào thanh ghi TRISB sẽ quy định các chân của Port B là input hay output (1 :input, 0 :output). Việc đọc thanh ghi Port B sẽ đọc trạng thái của các chân ở Port B. Việc ghi giá trị vào thanh ghi Port B sẽ thay đổi trạng thái của các chân Port B. Ba chân của Port B được đa hợp với chức năng In-Circuit Debugger và Low Voltage Programming function :RB3/PGM, RB6/PGC, RB7/PGD. Mỗi chân Port B có một transistor kéo lên Vdd. Chức năng này hoạt động khi bit RBPU (Option ) được xóa. Chức năng này sẽ tự động được xóa khi Port B được quy định là input. Bốn chân của Port B từ RB7 đến RB4 có chức năng ngắt khi trạng thái chân Port B thay đổi (Khi Port B được quy định là output thì chức năng này không hoạt động.Giá trị chân của Port được so sánh với giá trị đã được lưu trước đó, khi có sự sai lệch giữa 2 giá trị này ngắt sẽ xảy ra với cờ ngắt RBIF (INTCON<0) sẽ bật lên.Ngắt có thể làm cho VĐK thoát khỏi trạng thái SLEEP. Bất cứ sự truy xuất nào trên PortB sẽ xóa trạng thái sai lệch, kết thúc ngắt và cho phép xóa cờ ngắt RBIF. . Port C: Port C gồm 8 chân từ chân RC0-RC7. Việc ghi giá trị vào thanh ghi TRISC sẽ quy định các chân của Port C là input hay output (1:input, 0 :output). Việc đọc thanh ghi Port C sẽ đọc trạng thái của các chân ở Port C. Việc ghi giá trị vào thanh ghi Port C sẽ thay đổi trạng thái của các chân Port C. Các chân của Port C được đa hợp với các chức năng ngoại vi. Khi các chức năng ngoại vi được cho phép ta cần quan tâm chặt chẽ tới giá trị các bit của thanh ghi TRISC. Một số chức năng ngoại vi sẽ ghi đè giá trị 0 lên các bit của thanh Chương 2: Cơ sở lý thuyết Trang 10
  15. Nghiên cứu chế tạo thiết bị kiểm định đẩy kéo ghi TRISC và mặc định các chân này là output, ngoài ra một số chức năng ngoại vi khác sẽ tự động mặc định một số chân là ngõ vào. Do đó cần xem xét kĩ các tính năng của các hàm ngoại vi để thiết lập giá trị các bit trong thanh ghi TRISC cho thích hợp.Ngoài ra, chân 25 và 26 của PIC tức bit thứ 6 và thứ 7 của PortC còn đảm nhiệm việc giao tiếp dữ liệu theo kiểu truyền nối tiếp, cụ thể chân 25 là chân truyền dữ liệu ( TXD ) của PIC và chân 26 là chân nhận dữ liệu ( RXD ) của PIC. . Port D: Port D gồm 8 chân từ chân RD0-RD7. Bên cạnh chức năng là port xuất nhập, Port D còn có thể hoạt động như một cổng song song bằng cách set bit PSPMODE (TRISE ), trong chế độ này buffer ngõ vào là TTL. 2.1.6 Ngắt PIC 16F877 có đến 15 nguồn tạo ra hoạt động ngắt được điều khiển bởi thanh ghi INTCON (bit GIE). Bên cạnh đó mỗi ngắt còn có một bit điều khiển và cờ ngắt riêng. Các cờ ngắt vẫn được set bình thường khi thỏa mãn điều kiện ngắt xảy ra bất chấp trạng thái của bit GIE, tuy nhiên hoạt động ngắt vẫn phụ thuộc vào bit GIE và các bit điều khiển khác. Bit điều khiển ngắt RB0/INT và TMR0 nằm trong thanh ghi INTCON, thanh ghi này còn chứa bit cho phép và ngắt ngoại vi PEIE. Bit điều khiển các ngắt nằm trong thanh ghi PIE1và PIE2. Cờ ngắt của các ngắt nằm trong thanh ghi PIR1 và PIR2. Trong một thời điểm chỉ có một chương trình ngắt được thưc thi, chương trình ngắt được kết thúc bằng lệnh RETFIE. Khi chương trình ngắt được thực thi, bit GIE tự động được xóa địa chỉ tiếp theo của chương trình chính được cất trong bộ nhớ Stack và bộ đếm chương trình sẽ chỉ đến địa chỉ 0004H. Lệnh RETFIE được dung để thoát khỏi chương trình ngắt và quay trở về chương trình chính, đồng thời GIE cũng sẽ được set để cho phép các ngắt hoạt động trở lại. Các cờ hiệu được dùng để kiểm tra ngắt nào đang xảy ra và phải được xóa bằng chương trình trước khi cho phép ngắt tiếp tục hoạt động trở lại để ta có thể phát hiện được thời điểm tiếp theo mà ngắt xảy ra. Đối với các ngắt ngoại vi như ngắt từ chân RB0 hay ngắt từ sự thay đổi trạng thái các chân của PORTB, việc xác định ngắt nào xảy ra cần ba hoặc 4 chu kỳ lệnh tùy thuộc vào thời điểm xảy ra ngắt. Cần chú ý trong quá trình thực thi ngắt chỉ có giá trị của bộ đếm chương trình được cất vào trong Stack, trong khi một số thanh ghi quan trọng sẽ không được cất và có thể bị thay đổi giá trị trong quá trình thực thi ngắt. Điều này nên được xử lý bằng chương trìnhđể tránh hiện tượng trên xảy ra. Ngắt INT: Ngắt này dựa trên sự thay đổi trạng thái của chân RB0. Cạnh tác động gây ra ngắt có thể là cạnh lên hay cạnh xuống và được điều khiển bởi bit INTEDG (thanh ghi OPTION_REG ). Khi có cạnh tác động thích hợp xuất hiện tại chân RB0, cờ ngắt INTF được set bất chấp trạng thái các bit điều khiển GIE và PEIE. Ngắt này có thể đánh thức vi điều khiển từ chế độ Sleep nếu bit cho phép ngắt được set trước khi lệnh Sleep được thực thi. Chương 2: Cơ sở lý thuyết Trang 11
  16. Nghiên cứu chế tạo thiết bị kiểm định đẩy kéo Hình 2.1.10 Sơ đồ logic tất cả các ngắt trong VĐK PIC 16F887 2.1.7. TIMER/COUNTER Vi điều khiển PIC 16F887 có 3 Timer T0, T1 và T2. T0 là timer/counter 8 bit, T1 là timer/counter 16 bit cả 2 đều có bộ chia trước. T2 là timer 8 bit có bộ chia trước và chia sau. . Khảo sát timer1/counter: Timer1 là bộ định thời 16 bit, giá trị của Timer1 sẽ được lưu trong hai thanh ghi (TMR1H:TMR1L). Cờ ngắt của Timer1 là bit TMR1IF (PIR1 ). Bit điều khiển của Timer1 sẽ là TMR1IE (PIE ). Tương tự như Timer0, Timer1 cũng có hai chế độ hoạt động: chế độ định thời (timer) với xung kích là xung clock của oscillator (tần số của timer bằng ¼ tần số của oscillator) và chế độ đếm (counter) với xung kích là xung phản ánh các sự kiện cần đếm lấy từ bên ngoài thông qua chân RC0/T1OSO/T1CKI (cạnh tác động là cạnh lên). Việc lựa chọn xung tác động (tương ứng với việc lựa chọn chế độ hoạt động là timer hay counter) được điều khiển bởi bit TMR1CS (T1CON ). Sau đây là sơ đồ khối của Timer1: Chương 2: Cơ sở lý thuyết Trang 12
  17. Nghiên cứu chế tạo thiết bị kiểm định đẩy kéo Hình 2.1.11 Sơ đồ khối Timer T1 Ngoài ra Timer1 còn có chức năng reset input bên trong được điều khiển bởi một trong hai khối CCP (Capture/Compare/PWM). . Các thanh ghi liên quan đến Timer1 bao gồm: + INTCON (địa chỉ 0Bh, 8Bh, 10Bh, 18Bh): cho phép ngắt hoạt động (GIE và PEIE). + PIR1 (địa chỉ 0Ch): chứa cờ ngắt Timer1 (TMR1IF). + PIE1( địa chỉ 8Ch): cho phép ngắt Timer1 (TMR1IE). + TMR1L (địa chỉ 0Eh): chứa giá trị 8 bit thấp của bộ đếm Timer1. + TMR1H (địa chỉ 0Eh): chứa giá trị 8 bit cao của bộ đếm Timer1. + T1CON (địa chỉ 10h): xác lập các thông số cho Timer1. 2.1.8. Chuyển đổi tương tự sang số ADC . Chức năng các thành phần ở hình 2.2.4.1 + AN0 đến AN13 (analog) là 14 ngõ vào của 14 kênh tương tự được đưa đến mạch đa hợp. + CHS là các ngõ vào chọn kênh của bộ đa hợp tương tự.Tín hiệu kênh tương tự đã chọn sẽ được đưa đến bộ chuyển đổi ADC. + Điện áp tham chiếu dương Vref+ có thể lập trình nối với nguồn cung cấp dương AVDD hoặc điện áp tham chiếu bên ngoài nối với ngõ vào Vref+ của chân AN3, bit lựa chọn là VCFG0. + Điện áp tham chiếu âm Vref- có thể lập trình nối với nguồn cung cấp AVSS hoặc điện áp tham chiếu bên ngoài nối với ngõ vào Vre- của chân AN2, bit lựa chọn là VCFG1. + Hai ngõ vào Vref+ và Vref- có chức năng thiết lập độ phân giải cho ADC. Chương 2: Cơ sở lý thuyết Trang 13
  18. Nghiên cứu chế tạo thiết bị kiểm định đẩy kéo + Bit ADON có chức năng cho phép ADC hoạt động hoặc tắt bộ ADC khi không hoạt động để giảm công suất tiêu tán, ADON bằng 1 thì cho phép, bằng 0 tắt. + Kết quả chuyển đổi là số nhị phân 10 bit sẽ lưu vào cặp thanh ghi 16 bit có tên là ADRESH và ADRESL, 10 bit kết quả lưu vào thanh ghi 16 bit nên có dạng lưu là canh lề trái và canh lề phải tùy thuộc vào bit lựa chọn có tên ADFM. ADC của PIC16F887 có sơ đồ khối như hình: Hình 2.1.12 Sơ đồ khối của ADC PIC 16F887 ADC có 14 kênh nhưng mỗi thời điểm chỉ chuyển đổi 1 kênh và chuyển đổi kênh nào thì phụ thuộc vào 4 bit chọn kênh CHS4:CHS0. Hai ngõ vào điện áp tham chiếu dương và âm có thể lập trình nối với nguồn VDD và VSS hoặc nhận điện áp tham chiếu từ bên ngoài qua 2 chân RA3 và RA2. Khối ADC độc lập với CPU nên có thể hoạt động khi CPU đang ở chế độ ngủ do xung cung cấp cho ADC lấy từ dao động RC bên trong của khối ADC 2.1.9. Truyền dữ liệu EUSART Vi điều khiển PIC16F887 có khối truyền dữ liệu đồng bộ, bất đồng bộ đa năng cải tiến.Khối truyền dữ liệu nối tiếp đa năng bao gồm bộ phát xung clock tạo tốc độ truyền, Chương 2: Cơ sở lý thuyết Trang 14
  19. Nghiên cứu chế tạo thiết bị kiểm định đẩy kéo các thanh ghi dịch và bộ đệm dữ liệu rất cần thiết để thực hiện truyền hoặc nhận dữ liệu nối tiếp một cách độc lập. Khối EUSART cũng có thể xem là giao tiếp truyền dữ liệu nối tiếp SCI (Serial Communication Interface) , có thể định cấu hình cho truyền dữ liệu bất đồng bộ song công hoặc đồng bộ bán song công. Truyền dữ liệu song công được sử dụng để truyền dữ liệu giữa các hệ thống ngoại vi như thiết bị đầu cuối CRT và máy tính. Truyền dữ liệu đồng bộ bán song công được sử dụng để truyền dữ liệu giữa các hệ thố ng ngoại vi như các bộ ADC, DAC, bộ nhớ nối tiếp Eeprom hoặc các bộ vi điều khiển. Các thiết bị này thường không có nguồn xung clock bên trong để tạo tốc độ baud nên cần phải sử dụng nguồn xung clock từ bên ngoài. . Khối truyền dữ liệu của PIC16F887 có khả năng: + Hoạt động truyền và dữ liệu song công bất đồng bộ. + Bộ đệm nhận chứa được 2 kí tự. + Bộ đệm phát chứa 1 kí tự. + Có thể lập trình chiều dài dữ liệu 8 bit hoặc 9 bit. + Có khối phát hiện địa chỉ 9 bit. + Có khối phát hiện bộ đệm nhận bị tràn. + Có khối phát hiện lỗi khung của kí tự nhận về. + Có thể hoạt động chế độ chủ ở kiểu truyền dữ liệu đồng bộ bán song công. + Có thể hoạt động chế độ tớ ở kiểu truyền dữ liệu đồng bộ bán song công. + Có thể lập trình chọn cực cho xung clock ở chế độ truyền đồng bộ. . Khối EUSART được sử dụng cho các cấu trúc mở rộng theo sau, thích hợp cho hệ thống bus mạng kết nối cục bộ (LIN: Local Interconnect Network): + Tự động phát hiện và thiết lập tốc độ baud. + Có khối đánh thức PIC khỏi chế độ ngủ. + Phát kí tự ngừng 13 bit. . Các thanh ghi phục vụ cho khối ESUART của PIC16F887: Hoạt động của khối ESUART được điều khiển thông qua 3 thanh ghi nhưu sau: + Thanh ghi điều khiển và trạng thái của khối phát (TXSTA – transmit Status and Control). + Thanh ghi điều khiển và trạng thái của khối nhận (RCSTA – transmit Status andControl). + Thanh ghi điều khiển tốc độ baud (BAUDCTL – Baud Rate Control) PIC16F887 được tích hợp sẵn bộ tạo tốc độ baud BRG 8 bit dùng cho giao diện USART. BRG thực chất là một bộ đếm có thể được sử dụng cho cả hai dạng đồng bộ và bất đồng bộ và được điều khiển bởi thanh ghi PSBRG. Ở dạng bất đồng bộ, BRG còn được điều khiển bởi bit BRGH ( TXSTA ). Ở dạng đồng bộ tác động của bit BRGH được bỏ qua. . Tốc độ baud do BRG tạo ra được tính theo công thức sau: Chương 2: Cơ sở lý thuyết Trang 15
  20. Nghiên cứu chế tạo thiết bị kiểm định đẩy kéo Bảng 1 Công thức tính tốc độ baud của BRG. Trong đó X là giá trị của thanh ghi RSBRG ( X là số nguyên và 0<X<255). Các thanh ghi liên quan đến BRG bao gồm: + TXSTA (địa chỉ 98h): chọn chế độ đòng bộ hay bất đồng bộ ( bit SYNC) và chọn mức tốc độ baud (bit BRGH). + RCSTA (địa chỉ 18h): cho phép hoạt động cổng nối tiếp (bit SPEN). + RSBRG (địa chỉ 99h): quyết định tốc độ baud. 2.2. Module Sim900 2.2.1. Giới thiệu Module Sim900 Hình 2.2.1 Module Sim900 SIM900 có tính năng như một chiếc điện thoại. Có thể nói nó chính là “nhân” của một chiếc điện thoại di động vì nó có khả năng kết nối với mạng GSM để thực hiện các tác vụ tương tự như một chiếc điện thoại bình thường như: gọi điện, nhắn tin và kết nối GPRS thông qua tập lệnh AT. Ngoài ra nó có khả năng bắt sóng GPS. SIM900 có thể hoạt động trong các giải băng tần: EGSM 900MHz và DCS 1800MHz. Được thiết kế với kích thước rất nhỏ gọn: 24mm x 24mm x 3mm nên SIM900 hầu như được sử dụng trong rất nhiều ứng dụng hiện ngày nay như: M2M (Mobile to Mobile), trong các SmartPhone, PDA và các thiết bị di động. Giao tiếp vật lý trong ứng dụng Chương 2: Cơ sở lý thuyết Trang 16
  21. Nghiên cứu chế tạo thiết bị kiểm định đẩy kéo điện thoại của SIM900 là 68 chân, nó cung cấp tất cả các giao diện vật lý giữa module Sim với bo mạch của khách hàng: . Có Serial port và Debug port giúp dễ dàng hơn trong việc phát triển ứng dụng. . Một kênh audio bao gồm Input của Microphone và Ouput của Speaker. Có thể dễ dàng được cấu hình bằng lệnh AT qua cổng giao tiếp nối tiếp. Giao tiếp với simcard giống như điện thoại di động. . SIM900 hỗ trợ giao thức TCP/IP, rất hữu ích cho việc truyền dữ liệu trên Internet.SIM900 được thiết kế với công nghệ tiết kiệm năng lượng vì vậy mức tiêu thụ chỉ ở mức 1.5mA ở trong chế độ SLEEP. 2.2.2. Tập lệnh AT Sim900 Các lệnh AT là các hướng dẫn được sử dụng để điều khiển một modem.AT là một cách viết gọn của chữ Attention.Mỗi dòng lệnh của nó bắt đầu với “AT” hay “at”. Đó là lý do tại sao các lệnh modem được gọi là các lệnh AT. Nhiều lệnh của nó được sử dụng để điều khiển các modem quay số sử dụng dây mối (wired dial-up modems), chẳng hạn như ATD (Dial), ATA (Answer), ATH (Hool control) và ATO (return to online data state), cũng được hỗ trợ bởi các modem GSM/GPRS và các điện thoại di động. Bên cạnh bộ lệnh AT thông dụng này, các modem GSM/GPRS và các điện thoại di động còn được hỗ trợ bởi một bộ lệnh AT đặc biệt đối với công nghệ GSM 2.2.2.1. Các thuật ngữ : Carriage return (0x0D). : Line Feed (0x0A). MT : Mobile Terminal. Thiết bị đầu cuối mạng (trong trường hợp này là modem). TE : Terminal Equipment.Thiết bị đầu cuối (máy tinh, hệ vi điều khiển). 2.2.2.2. Chế độ nghỉ(sleep mode) Hình 2.2.2 Chuyển từ chế độ hoạt động bình thường sang chế độ nghỉ(sleep mode) AT+CFUN=0 : Tắt hết mọi chức năng liên quan đến truyền nhận sóng RF và các chức năng liênquan đến SIM. MT không còn được kết nối với mạng. OK : Chuỗi thông báo kết quả thực thi lệnh thành công, thông thường là sau 3 giây kể từlúc nhận lệnh AT+CFUN=0. Chuyển trạng thái chân DTR từ mức 0 sang mức 1, Module hoạt động ở chế độ sleep mode. Chương 2: Cơ sở lý thuyết Trang 17