1. Trang chủ
  2. » Luận Văn - Báo Cáo

ĐỀ TÀI THU THẬP DỮ LIỆU DÙNG RASPBERRY PI THÔNG QUA MẠNG INTERNET

75 4,6K 45

Đ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

Thông tin cơ bản

Định dạng
Số trang 75
Dung lượng 3,58 MB

Nội dung

Một câu hỏi xuất hiện trong đầu các nhà quản lý bảo trì “liệu có cách nào để giám sát được các thiết bị, máy móc, động cơ… mà không nhất thiết phải có mặt tại đó, và tại bất cứ đâu dù ở

Trang 1

TRƯỜNG ĐH SƯ PHẠM KỸ THUẬT CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

TP HỒ CHÍ MINH ĐỘC LẬP - TỰ DO - HẠNH PHÚC

KHOA ĐIỆN-ĐIỆN TỬ

Tp HCM, ngày 11 tháng 7 năm 2014

NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP

Chuyên ngành: Kỹ thuật Điện - Điện tử Mã ngành: 01

I TÊN ĐỀ TÀI: THU THẬP DỮ LIỆU DÙNG RASPBERRY PI THÔNG QUA

MẠNG INTERNET

II NHIỆM VỤ

1 Các số liệu ban đầu:

2 Nội dung thực hiện:

IV NGÀY HOÀN THÀNH NHIỆM VỤ: 11/07/2014

V HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN: THS LÊ MINH THÀNH

Trang 2

TRƯỜNG ĐẠI HỌC SPKT TPHCM CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

Khoa Điện - Điện Tử Độc lập - Tự do - Hạnh phúc

Bộ Môn Điện Tử Viễn Thông

Tp Hồ Chí Minh, ngày tháng năm 2014

LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP

Họ tên sinh viên 1:

Lớp: MSSV: ………

Họ tên sinh viên 2:

Lớp: MSSV: ………

Tên đề tài: ………

GVHD

GV HƯỚNG DẪN (Ký và ghi rõ họ và tên)

Trang 3

LỜI MỞ ĐẦU

Xã hội ngày càng phát triển với những công nghệ hiện đại và gần gũi với conngười Với mức sống và nhu cầu của con người ngày càng cao, đòi hỏi nền kỹ thuậtphải luôn thay đổi, hoàn thiện để đáp ứng và nâng cao chất lượng cuộc sống Trong đóngành Điện tử góp phần lớn và quan trọng mang lại những thành tựu to lớn đó Vớiđặc thù của ngành là luôn đón đầu công nghệ, ngành Điện tử luôn cho ra các sản phẩmmới để phục vụ con người, không chỉ trong cuộc sống mà còn trong khoa học, quân

sự, y tế,… Điều đó không chỉ góp phần thúc đẩy chất lượng cuộc sống ngày càng tốthơn, mà còn mở ra nhiều hướng đi mới hỗ trợ con người nhiều hơn trong tương lai

Kỹ thuật Điện tử kết hợp với sự phát triển của Công nghệ thông tin đã, đang và

sẽ tiếp tục cho ra những sản phẩm công nghệ mới, không những đa chức năng, đa ứngdụng mà kích thước cũng ngày càng nhỏ hơn, tiện lợi hơn Một trong những sản phẩm

ấy chính là sự ra đời và phát triển của dòng sản phẩm Raspberry Pi Kích thước nhỏgọn cộng với những tính năng như một máy tính tí hon, Raspberry Pi là một công cụtuyệt vời giúp con người dễ dàng tiếp cận thế giới công nghệ hơn với những ứng dụng,sáng tạo gần gũi với cuộc sống Là một nước đang phát triển và trong giai đoạn “Côngnghiệp hóa, hiện đại hóa”, Việt Nam rất cần tiếp cận với những thiết bị khoa học kỹthuật để đáp ứng và hoàn thành chiến lược đặt ra Vì thế, Việt Nam đã và đang đầu tưnhiều vào nguồn nhân lực để có thể nắm bắt và dần làm chủ được công nghệ Với sự

ra đời và phát triển của Raspberry Pi cộng với việc sản phẩm đã du nhập về Việt Nam,đây là cơ hội để đội ngũ kỹ thuật vừa có cơ hội tiếp cận với nền kỹ thuật tiên tiến củathế giới, vừa góp phần sáng tạo thêm những ứng dụng mới để đưa vào đời sống, nhằmcải thiện và nâng cao chất lượng cuộc sống ngày càng tốt đẹp hơn

Việc nghiên cứu và ứng dụng Raspberry Pi vào thực tế cuộc sống là một điều rấtmới mẻ và cũng rất cần thiết cho những người đam mê ngành kỹ thuật nói chung vàngành điện tử nói riêng trong vai trò làm chủ công nghệ hiện nay Để góp phần tạo nênnền tảng ban đầu vững chắc cho việc học tập, tìm hiểu kỹ thuật vi xử lý, vi điều khiển

và quen với lập trình bằng ngôn ngữ cấp cao, nhóm thực hiện đề tài đã tập trung

nghiên cứu đề tài: “Thu thập dữ liệu dùng Raspberry Pi thông qua mạng Internet”.

Những kiến thức, năng lực đạt được trong quá trình học tập ở trường sẽ đượcđánh giá qua đợt bảo vệ đồ án cuối khóa Vì vậy nhóm thực hiện đề tài cố gắng tậndụng những kiến thức đã học ở trường cùng với sự tìm tòi, nghiên cứu, sự hướng dẫntận tình của Giáo viên hướng dẫn cùng Thầy/Cô thuộc Khoa Điện-Điện Tử để có thểhoàn thành tốt đồ án này

Mặc dù nhóm thực hiện đề tài đã cố gắng hoàn thành nhiệm vụ của đề tài đặt ra

và đúng thời hạn nhưng chắc chắn sẽ không tránh khỏi những thiếu sót, mong quýThầy/Cô và các bạn sinh viên thông cảm Nhóm thực hiện đề tài mong nhận đượcnhững ý kiến đóng góp của quý Thầy/Cô và các bạn sinh viên

Xin chân thành cảm ơn!

Trang 4

LỜI CẢM ƠN

Nhóm thực hiện xin chân thành gửi lời cảm ơn đến Thầy Ths Lê Minh Thành – Giảng viên Bộ môn Điện tử Viễn Thông đã trực tiếp hướng dẫn và tận tình giúp

đỡ, tạo điều kiện để nhóm thực hiện hoàn thành tốt đề tài

Bên cạnh đó, nhóm thực hiện cũng xin chân thành cảm ơn đến các quý Thầy Cô trong trường Đại học Sư phạm Kỹ Thuật Thành phố Hồ Chí Minh nói chung và khoa Điện – Điện tử nói riêng đã truyền đạt những kiến thức quý báu, tạo dựng nền

móng đầu tiên cho nhóm thực hiện có cơ sở cũng như nền tảng kiến thức cần thiết đểnhóm em hoàn thành tốt Đề tài Đồ Án Tốt Nghiệp cũng như định hướng nghề nghiệptương lai sau này

Nhóm thực hiện cũng xin chân thành gửi lời đồng cảm ơn đến các bạn sinh viêncùng lớp 101011 đã chia sẻ, trao đổi những kiến thức cũng như những kinh nghiệmquý báu của mình để góp phần giúp nhóm thực hiện hoàn thành Đề tài tốt hơn

Xin chân thành cảm ơn!

NHÓM THỰC HIỆN ĐỀ TÀISV: Văn Ngọc Khánh

SV: Nguyễn Văn Linh

Trang 5

MỤC LỤC

Chương 1: DẪN NHẬP

1.1 Đặt vấn đề

1.2 Lý do chọn đề tài

1.3 Đối tượng nghiên cứu 11

1.4 Mục tiêu đề tài 11

1.5 Giới hạn đề tài 11

1.6 Dàn ý nghiên cứu 12

1.7.Ý nghĩa thực tiển 13

Chương 2: TỔNG QUAN VỀ THU THẬP DỮ LIỆU 14

2.1 Tổng quan 14

2.2 Các phương pháp thu thập dữ liệu 14

2.3 Ứng dụng trong thực tiễn 16

Chương 3: THU THẬP DỮ LIỆU DÙNG RASPBERRY PI 17

3.1 Thu thập dữ liệu dùng Raspberry Pi thông qua Internet 17

3.1.1 Sơ đồ khối 17

3.1.2 Nguyên lý hoạt động 18

3.2 Raspberry Pi 18

3.2.1 Giới thiệu về Raspberry Pi 18

3.2.2 Cấu tạo của Raspberry Pi 20

3.2.3 Phụ kiện hỗ trợ kèm theo 22

3.2.4 Làm việc với Raspberry Pi qua máy tính 24

3.2.4.1 Giao tiếp Raspberry Pi bằng SSH 25

3.2.4.1.1 Cài đặt SSH server trên Raspberry Pi 25

3.2.4.1.2 Cài đặt SSH client trên máy tính Windows 25

3.2.4.2 Giao tiếp Raspberry bằng VNC 27

3.2.4.2.1 Cài đặt VNC server trên Raspberry 27

Trang 6

3.2.5 Cấu hình UART và cài đặt thư viện WebIOPi trên Raspberry 29

3.3 PIC 16F887 30

3.3.1 Cấu tạo và sơ đồ chân 30

3.3.2 Các khối chức năng được sử dụng 33

3.3.2.1 Các thành phần trong ADC 33

3.3.2.2 Timer/Counter 33

3.3.2.3 Giao thức truyền dữ liệu UART 37

3.4 Web server 42

3.4.1 Tổng quan về Internet và web 42

3.4.2 Thiết lập web server bằng Apache 42

3.4.3 Bố cục trang web 44

Chương 4: THIẾT KẾ HỆ THỐNG THU THẬP DỮ LIỆU DÙNG RASPBERRY PI………46

4.1 Các khối chức năng 46

4.1.1 Khối nguồn 46

4.1.2 Khối kết nối vi điều với các cảm biến 48

4.1.3 Khối hiển thị LCD 53

4.1.4 Khối chuyển đổi điện áp 54

4.1.5 Sơ đồ nguyên lý toàn mạch 56

4.2 Lưu đồ và giải thuật 58

4.2.1 Lưu đồ và giải thuật của chương trình trên PIC 16F887 58

4.2.1.1 Chương trình con ngắt định thời timer2 58

4.2.1.2 Chương trình con cấu hình LCD 59

4.2.1.3 Chương trình con cấu hình truyền dữ liệu UART 60

4.2.1.4 Chương trình con hiển thị giá trị lên LCD 60

4.2.1.5 Chương trình con cấu hình timer/counter 61

4.2.1.6 Chương trình con truyền dữ liệu UART 62

4.2.1.7 Chương trình chính 63

4.2.2 Lưu đồ và giải thuật của chương trình trên Raspberry Pi 64

4.2.2.1 Chương trình nhận dữ liệu UART 64

Trang 7

4.2.2.2 Chương trình ghi dữ liệu ra file text 66

4.2.2.3 Chương trình chính trên Raspberry Pi 67

Chương 5: KẾT QUẢ NGHIÊN CỨU 68

5.1 Kết quả xây dựng web server 68

5.2 Kết quả phần cứng hệ thống thu thập dữ liệu 69

5.3 Kết quả tổng quát 70

Chương 6: KẾT LUẬN, HƯỚNG PHÁT TRIỂN 72

6.1 Kết luận 72

6.2 Hướng phát triển 72

PHỤ LỤC ……… 74

Tài liệu tham khảo 74

Nội dung đính kèm (DVD) 75

Trang 8

Đồ án tốt nghiệp

Chương 1 DẪN NHẬP

1.1 Đặt vấn đề

Xã hội ngày càng tiến bộ, cùng sự phát triển không ngừng của khoa học kỹ thuậtlàm tiền đề cho những yêu cầu về sự tiện lợi cũng như độ tin cậy cao trong quá trìnhsản xuất công nghiệp Một trong những vấn đề đặt ra là nhu cầu giám sát các thiết bịmáy móc, động cơ… có vốn đầu tư cao và ảnh hưởng lớn đến cả quá trình hoạt độngcủa công ty, xí nghiệp Mong muốn của các nhà quản lý, nhà bảo trì là luôn biết đượcnhững thông tin chính xác về môi trường làm việc cùng thông số cơ bản của thiết bị,máy móc, động cơ mà mình quản lý mọi lúc và gần như mọi nơi

Nền kinh tế thị trường luôn đòi hỏi sự cạnh tranh không ngừng giữa các công ty,

xí nghiệp Việc cạnh tranh bao gồm rất nhiều khía cạnh như lĩnh vực kinh doanh,nguồn vốn đầu tư, công nghệ sản xuất, chất lượng sản phẩm… và để đạt được nhữngmục tiêu trên thì cách tổ chức quản lý và vận hành công việc trong nội bộ công ty làchìa khóa duy nhất Và với riêng khâu quản lý bảo trì thiết bị, máy móc, động cơ… đạthiệu quả cao sẽ góp phần không nhỏ vào sự phát triển của cả công ty Vấn đề đặt ra làkhông thể lúc nào cũng theo dõi giám sát thiết bị, máy móc, động cơ… xuyên suốt màkhông mắc sai sót bằng thủ công Một câu hỏi xuất hiện trong đầu các nhà quản lý bảo

trì “liệu có cách nào để giám sát được các thiết bị, máy móc, động cơ… mà không nhất thiết phải có mặt tại đó, và tại bất cứ đâu dù ở nhà, ở nơi công cộng, ở công ty vẫn biết được những thông tin cần thiết về thiết bị, máy móc, động cơ mà mình quản lý?”

• Dùng hệ thống cảm biến kết nối thiết bị lập trình PLC:

Phương pháp này có ưu điểm là khả năng hoạt động tốt trong môi trường côngnghiệp của thiết bị lập trình PLC, rất ít nhiễu có thể ảnh hưởng đến độ chính xác

Trang 9

Đồ án tốt nghiệp

điều khiển Cùng với nguồn điện hoạt động đa dạng hầu như tương thích với tất

cả các nguồn điện thông dụng tại các đơn vị sản xuất Vấn đề là chi phí đầu tư rấtlớn, bởi giá của các thiết bị lập trình PLC cùng các cảm biến tương thích là khácao Kích thước của các module lớn, nhiều kết nối dây, khả năng kết nối internetvẫn còn hạn chế

Ví dụ như hệ thống PLC Siemens S7-300, có giá gần 55 triệu đồng, không hỗ trợkết nối internet

• Dùng hệ thống cảm biến kết nối với vi điều khiển:

Vi điều khiển có tốc độ xử lý nhanh, kích thước nhỏ gọn, có nhiều I/O Chi phíđầu tư cho vi điều khiển cùng cảm biến tương thích rẻ, phần cứng đơn giản gọnnhẹ, mạch điều khiển tiêu thụ rất ít điện năng Có thể kết hợp với các modulechuyên dụng để kết nối truyền nhận dữ liệu qua mạng internet

Hạn chế là khả năng hoạt động không ổn định trong môi trường nhiễu côngnghiệp, nguồn điện hoạt động không tương thích với nguồn điện tại đơn vị sảnxuất

Ví dụ:

• Kit FriendlyARM ARM11 Tiny6410, có giá hơn 3 triệu đồng, các thôngtin về kit:

 CPU/SOC: S3C6410, Samsung

 Core/Clock: ARM1176JZF-S 533 MHz Default 667 MHz max.

 RAM: 256 MBytes DDR2 (32 bit buss)

 Flash: 2 GByte NAND Flash1 1024 Byte EEPROM on IIC Interface

 LCD: Sharp 4.3" 480x272

 Touch screen: Integrated in Sharp LCD panel

 Ethernet: RJ45 10/100M with DM9000

 Serial: 4 DB9 RS232 COM0, COM1, COM2, COM3

 USB: 1 MiniUSB Device USB2.0, 1 USB Host USB1.1

 Audio: Stereo out - 3.5mm Jack , Mic input jack

 TV: RCA Jack Composite TV output

 IR: Infrared Receiver

 SD: SD Card standard size Up to 32 GBytes

Trang 10

Đồ án tốt nghiệp

 JTAG: 10 Pin JTAG Header 2x5

 LCD: 40 pin header, 2x20

41 pin Mini/Micro2550 style for FFC

 Camera: CMOS CAM130 or similar 2x10

 RTC: Battery Backed RTC

• Kit Raspberry Pi, có giá 1 triệu đồng, thông tin về kit:

 CPU/SOC: Broadcom BCM2835 chạy ở tốc độ 700MHz

• Hệ thống dùng PLC Siemens S7-300:

− Đáp ứng tốt yêu cầu thu thập thông tin nhiệt độ, độ ẩm và tốc độ quay

− Không đáp ứng yêu cầu truyền nhận dữ liệu qua internet

− Giá thành quá cao, gần 55 triệu đồng

• Kit FriendlyARM ARM11 Tiny6410:

− Đáp ứng tốt yêu cầu thu thập thông tin nhiệt độ, độ ẩm và tốc độ quay

− Có khả năng kết nối với internet để truyền nhận dữ liệu

− Giá thành vừa phải, hơn 3 triệu đồng

• Kit Raspberry Pi:

− Đáp ứng tốt yêu cầu thu thập thông tin nhiệt độ, độ ẩm và tốc độquay

− Có khả năng kết nối với internet để truyền nhận dữ liệu

− Giá thành rẻ, chỉ 1 triệu đồng

Từ các phân tích trên cho thấy hệ thông dùng PLC không đáp ứng đượcyêu cầu của đồ án Cả 2 kit FriendlyARM ARM11 Tiny6410 và Raspberry Piđều đáp ứng tốt yêu cầu, tuy nhiên xét về giá thành kit FriendlyARM ARM11

Trang 11

1.3 Đối tượng nghiên cứu

Với việc nhóm nghiên cứu chọn đề tài trên, đối tượng nghiên cứu là:

- Raspberry Pi

- Xây dựng web server trên Raspberry Pi

- Nhận, xử lý dữ liệu từ cảm biến để đưa lên web server

1.4 Mục tiêu đề tài

- Tìm hiểu Raspberry Pi

- Ứng dụng ngôn ngữ C vào lập trình điều khiển

- Tìm hiểu và ứng dụng ngôn ngữ Python trên Raspberry Pi

- Tìm hiểu và ứng dụng ngôn ngữ HTML, Javascript để tạo giao diện web động thânthiện với người dùng

- Ứng dụng những kiến thức đã học về PIC 16F887 để thu thập dữ liệu từ cảm biếnnhiệt độ, cảm biến độ ẩm, encoder…

- Thiết kế, thi công mô hình thu thập dữ liệu máy móc, thiết bị động cơ qua mạnginternet

1.5 Giới hạn đề tài

Trong giới hạn thời gian cho phép để hoàn thành đồ án, kết hợp với những kiếnthức tích lũy được trong quá trình học tập, do đó nhóm chúng em chỉ tập trung nghiêncứu về:

- Tạo một giao diện web hiển thị dữ liệu bằng ngôn ngữ HTML, Javascript,Jquery cơ bản

- Thiết lập web server trên Raspberry Pi.Sử dụng ngôn ngữ Python để lập trìnhnhận và xử lý dữ liệu trên Raspberry Pi

- Sử dụng ngôn ngữ C dùng phần mềm mikroC để lập trình cho PIC16F887

 Đo nhiệt độ

 Đo độ ẩm

 Đo tốc độ quay của động cơ

- Thiết kế, thi công mô hình mạch thu thập dữ liệu về nhiệt độ, độ ẩm, tốc độquay của động cơ dùng Raspberry Pi thông qua mạng internet

- Hoạt động của hệ thống:

 Thu thập dữ liệu 3 kênh

Trang 12

Đồ án tốt nghiệp

 Vẽ đồ thị nhiệt độ, độ ẩm, tốc độ quay của động cơ trong trang hiển thị

dữ liệu

 Thời gian cập nhật dữ liệu là mỗi 30 giây

 Lưu lại dữ liệu dưới dạng file text để người thu thập có thể download

 Kết nối mạng wifi ở chế độ online và offline dùng mạng LAN nội bộ

1.6 Dàn ý nghiên cứu

Với yêu cầu đề ra và xác định hướng giải quyết, nhóm nghiên cứu xây dựng luậnvăn gồm các nội dung chính như sau:

Chương 2 Tổng quan về thu thập dữ liệu

Giới thiệu tổng quan về thu thập dữ liệu, các phương pháp thu thập dữ liệu vàứng dụng của thu thập dữ liệu trong thực tiễn

Chương 3 Thu thập dữ liệu dùng Raspberry Pi

 Trình bày cấu tạo Raspberry Pi, cách thức điều khiển Raspberry bằng máy tính

 Cấu tạo và sơ đồ chân của PIC16F887, chức năng và hoạt động của khối ADC,

bộ đếm xung nội và xung ngoại timer và counter, và khối truyền dữ liệu UARTcủa PIC16F887

 Giới thiệu tổng quan về web server, cách cài đặt web server trên Raspberry Pi,cách thiết lập 1 web server và bố cục của trang web sử dụng trong đồ án

 Trình bày sơ đồ khối và nguyên lý hoạt động của hệ thống thu thập dữ liệu dùngRaspberry Pi

Chương 4 Thiết kế hệ thống thu thập dữ liệu dùng Raspberry Pi

 Trình bày chi tiết về sơ đồ nguyên lý và hoạt động của các khối chức năng trong

hệ thống thu thập dữ liệu

 Lưu đồ và giải thuật của các chương trình sử dụng trên Raspberry Pi và vi điềukhiển PIC 16F887

Chương 5 Kết quả nghiên cứu

 Trình bày kết quả xây dựng web server và phần cứng thu thập dữ liệu

Chương 6 Kết luận, hướng phát triển

 Rút ra kết luận và hướng phát triển của đồ án

Trang 13

Chương 2 TỔNG QUAN VỀ THU THẬP DỮ LIỆU 2.1 Tổng quan

Thu thập dữ liệu là quá trình thu thập và xử lý thông tin cần quan tâm một cách

có hệ thống nhằm kiểm tra, nắm bắt tình trạng,phân tích để đưa ra kết quả của vấn đềnghiên cứu Từ đó cho phép xây dựng một hệ thống thu thập dữ liệu hoàn chỉnh vàđáng tin cậy phù hợp với yêu cầu thay đổi cho từng mục đích cụ thể được đặt ra Thuthập dữ liệu là công việc quan trọng và cần thiết trong nhiều lĩnh vực bao gồm khoahọc tự nhiên và xã hội, sản xuất và kinh doanh…

Quá trình thu thập dữ liệu đòi hỏi sự chính xác và mang tính đáp ứng linh hoạt,đồng thời phải bao quát tất cả các khả năng xảy ra sự thay đổi của thông tin cần nghiêncứu Bởi vì thông tin sai sót sẽ dẫn đến lãng phí nguồn nhân lực, gây nhầm lẫn cho cácnhà nghiên cứu, gây thiệt hại trong sản xuất kinh doanh…

2.2 Các phương pháp thu thập dữ liệu

Trong quá trình thu thập dữ liệu thường sử dụng các phương pháp cơ bản sau đểthu thập thông tin:

 Phương pháp nghiên cứu tài liệu: là phương pháp thu thập thông tin hoàn toàn giántiếp, không tiếp xúc với đối tượng khảo sát

Ví dụ: Khi cần biết thông tin cấu tạo, lịch sử hoạt động và bảo trì của 1 chiếc máybay, người nghiên cứu sẽ rất khó có điều kiện quan sát, tiếp xúc với đối tượng màthường phải thu thập thông tin qua các tài liệu chuyên ngành, các ghi chép củangười trực tiếp vận hành, bảo trì

Ưu điểm: không cần phải tiếp xúc trực tiếp với đối tượng.

Nhược điểm: khó khăn trong việc tìm kiếm tài liệu, không cập nhật được tình trạng

tức thời của đối tượng

 Phương pháp phi thực nghiệm: là phương pháp thu thập thông tin trực tiếp trên đối

Trang 14

Ví dụ: Muốn biết các thông số vận hành của 1 thiết bị máy móc, động cơ thì ngườithu thập có thể trực tiếp quan sát, tiếp xúc với đối tượng hoặc thông qua các thiết bị

đo để thu thập thông tin chỉ cho phép lấy được thông tin tại nơi đặt thiết bị đo

Đặc biệt người thu thập có thể lấy thông tin từ thiết bị đo mà không cần có mặt tạinơi đặt thiết bị và máy đo Thông tin từ thiết bị và máy đo thông qua môi trườngGPRS truyền đến điện thoại hoặc thông qua môi trường internet truyền đến mộtweb server để người thu thập truy cập vào lấy thông tin

Ưu điểm: dữ liệu được cập nhật liên tục, độ chính xác tương đối cao.

Nhược điểm: chi phí đầu tư cao.

 Phương pháp thực nghiệm: là phương pháp thu thập thông tin trực tiếp, có tác độnggây biến đổi đối tượng khảo sát và môi trường xung quanh đối tượng khảo sát

Ví dụ: Khi cần thu thập dữ liệu địa chất thì người khảo sát địa chất phải thực hiệncông việc đào, lấy mẫu, đo đạc Từ đó phân tích, thống kê các dữ liệu có được

Ưu điểm: độ chính xác cao, nắm bắt cặn kẽ thông tin.

Nhược điểm: tốn nhiều thời gian và công sức.

 Phương pháp trắc nghiệm: trong nghiên cứu công nghệ gọi là thử nghiệm Làphương pháp thu thập thông tin có tác động gây biến đổi các biến của môi trườngkhảo sát Không gây tác động nào làm biến đổi các thông số trạng thái của bản thânđối tượng khảo sát

Ví dụ: Trong cuộc điều tra ý kiến của người dân để kiểm tra phản ứng của dư luận

về quy định đi xe chính chủ, người thu thập thông tin sẽ lập ra một bảng liệt kê cáccâu hỏi để lấy ý kiến của người dân Sau đó sẽ xử lý và thống kê các ý kiến để cóđược thông tin cần thiết

Ưu điểm: ít tốn chi phí nhất trong tất cả các phương pháp.

Trang 15

Nhược điểm: mức độ phức tạp của thông tin gây khó khăn trong việc phân tích và

đưa ra kết luận

 Ở đồ án này sử dụng phương pháp thu thập dữ liệu phi thực nghiệm, thông quathiết bị đo, gửi thông tin qua môi trường truyền dữ liệu, có 2 môi trường truyềnthông dụng là GPRS và internet

GPRS là dịch vụ vô tuyến gói tổng hợp dành cho những người dùng hệ thốngthông tin di động toàn cầu GSM và điện thoại di động IS-136 Nó cung cấp dữ liệu

ở tốc độ từ 56 đến 114 Kb/s Hạn chế của GPRS là tốc độ và băng thông thấp

Internet là một hệ thống thông tin toàn cầu có thể được truy nhập công cộng gồmcác máy tính được liên kết với nhau, có tốc độ truyền nhận dữ liệu cao (Mb/s), ứngdụng rộng rãi

=> Vì nhu cầu truyền nhận dữ liệu lớn và tính tiện lợi cho người sử dụng nên đồ ánnày sử dụng môi trường truyền internet

2.3 Ứng dụng trong thực tiễn

Thu thập dữ liệu là công việc cần thiết và quan trọng, được ứng dụng rộng rãitrong nhiều lĩnh vực ngành nghề

- Trong khoa học tự nhiên: thu thập các số liệu, mẫu vật trong nghiên cứu khoa học

- Trong xã hội: điều tra dân số, khảo sát chất lượng cuộc sống, thu thập số liệu trênhiện trường, vụ án để phục vụ cho quá trình điều tra tìm kiếm nguyên nhân và tộiphạm…

- Trong sản xuất: thu thập các số liệu của máy móc, sản phẩm trong dây chuyền sảnxuất, giám sát tình trạng hoạt động của thiết bị máy móc…

- Trong kinh doanh: khảo sát nhu cầu tiêu dùng của khách hàng, điều tra hoạt độngcác đối thủ cạnh tranh để có phương án cạnh tranh thích hợp…

Trang 16

Một ứng dụng thực tiễn là trong kinh doanh của công ty sản xuất thiết bị điệncông nghiệp ABB, các nhân viên quản lý sẽ cập nhật thông tin về số lượng, chủng loại,giá thành, các thông số kỹ thuật của các mặt hàng kinh doanh từ các giấy tờ nhập hàng

và cập nhật dữ liệu đo đếm từ các thiết bị đo trong quá trình sản xuất lên trang chủ củacông ty

Trang 17

KHỐI NGUỒNCHUYỂN ĐỔI ĐIỆN ÁP

Chương 3 THU THẬP DỮ LIỆU DÙNG RASPBERRY PI

3.1 Thu thập dữ liệu dùng Raspberry Pi thông qua internet

3.1.1 Sơ đồ khối

Hình 3.1: Sơ đồ khối hoạt động của hệ thống

Hình 3.2: Sơ đồ khối chi tiết

Trang 18

Phân tích các khối:

 Khối Raspberry Pi: là khối trung tâm quan trọng nhất trong hệ thống thu thập

dữ liệu qua mạng internet, có chức năng kết nối với mạng internet, thiết lập,điều khiển web server và nhận dữ liệu từ vi điều khiển thông qua chuẩnUART

 Khối vi điều khiển PIC 16F887: là khối có chức năng lấy dữ liệu nhiệt độ, độ

ẩm, tốc độ quay động cơ và gữi đến Raspberry Pi thông qua chuẩn UART

 Khối chuyển đổi điện áp: có chức năng chuyển điện áp 5V thành 3V3 đểtương thích với Raspberry Pi trong giao tiếp UART

 Khối cảm biến: Cảm biến cập nhập nhiệt độ, độ ẩm môi trường gửi tới vi điều

Sau khi cấp nguồn phù hợp cho tất cả các khối, vi điều khiển PIC 16F887 sẽ lấy

dữ liệu từ các cảm biến đo nhiệt độ, độ ẩm, tốc độ quay động cơ sau đó xử lý rồitruyền dữ liệu sang chip SOC BCM2835 của Raspberry thông qua chuẩn truyền dữliệu nối tiếp UART, thời gian truyền của vi điều khiển cách nhau mỗi 3 giây.Raspberry sẽ xử lý dữ liệu nhận được rồi đưa đến web server liên tục sau mỗi 30 giây.Khi dùng trình duyệt web truy cập vào trang web theo địa chỉ đã xây dựng trênRaspberry Pi sẽ hiện ra trang hiển thị dữ liệu, dữ liệu sẽ được cập nhật sau mỗi 30giây

Do web server được xây dựng trên Raspberry nên hệ thống web vẫn hoạt độngtốt trong mạng LAN khi không có kết nối internet

3.2 Raspberry Pi

3.2.1 Giới thiệu về Raspberry Pi

Raspberry Pi là một chiếcmáy tính tí hon giá chỉ 35$ chạy hệ điều hành Linux ramắt vào tháng 2 năm 2012 Ban đầu Raspberry Pi được phát triển dựa trên ý tưởng tiến

sĩ Eben Upton tại đại học Cambridge muốn tạo ra một chiếc máy tính giá rẻ để họcsinh có thể dễ dàng tiếp cận và khám phá thế giới tin học Dự định khiêm tốn của ôngđến cuối đời là có thể bán được tổng cộng 1000 bo mạch cho các trường học Vậy thì

Trang 19

điều gì đã làm nên thành công ngoài sức tưởng tượng của Raspberry Pi khi đã bánđược hơn một triệu bo mạch chỉ trong vòng chưa đầy một năm?

Hình 3.3: Hình ảnh thực tế của Raspberry Pi

- Raspberry Pi có mức giá hấp dẫn:35$ cho một chiếc bo mạch có thể làm được hầunhư mọi ứng dụng hằng ngày như lướt web, học lập trình, xem phim HD đến những ýtưởng không ngờ đến như điều khiển robot, nhà thông minh…

- Raspberry Pi chạyhệ điều hành Linux: 99% những thứ làm trên máy tính Windowsđều có thể thực hiện được trên Linux và quan trọng là: tất cả đều miễn phí

- Raspberry Pi có 8 ngõ GPIO: có thể kết nối và điều khiển các thiết bị trong cuộcsống thực tế như đèn, động cơ, GPS… Rất nhiều ứng dụng nhà thông minh đã sử dụngRaspberry Pi làm bộ điều khiển trung tâm

- Raspberry Pi có kích thước tí hon: chỉ tương đương một chiếc thẻ ATM và nặngkhoảng 50 gram Gắn với chiếc tivi, Raspberry có thể biến thành một thiết bị giải tríthông minh trong phòng khách Gắn với màn hình và bàn phím, chuột, Raspberry cóthể biến thành một chiếc máy tính đúng nghĩa Nhỏ gọn và tiện lợi

Trang 20

- Cộng đồng Raspberry Pi phát triển rất nhanh trên thế giới: hầu hết những thắc mắccủa người dùng đều được giải đáp rất nhanh và còn hơn thế nữa: người dùng có thểtìm thấy hàng ngàn dự án đã thực hiện và vô số ý tưởng độc đáo.

Với nhưng ưu điểm độc đáo trên, Raspberry Pi đã vượt ra khỏi biên giới củatrường học và trở thành thiết bị ưa thích của rất nhiều người đam mê điện tử và lậptrình Sự thành công của nó đã mở ra một bước phát triển mới cho tin học: đem máytính và cảm hứng lập trình đến gần mọi người hơn bao giờ hết

3.2.2 Cấu tạo của Raspberry Pi

Hình 3.4: Cấu tạo của Raspberry Pi

• Trái tim của Raspberry Pi là chip SOC (System-On-Chip) BroadcomBCM2835 chạy ở tốc độ 700MHz Chip này tương đương với nhiều loại được

sử dụng trong smartphone phổ thông hiện nay, và có thể chạy được hệ điềuhành Linux Tích hợp trên chip này là nhân đồ họa (GPU) BroadcomVideoCore IV GPU này đủ mạnh để có thể chơi 1 số game phổ thông và phátvideo chuẩn full HD

• 8 ngõ GPIO (General Purpose Input Output): đúng như tên gọi của nó, chúng ta

có thể kết nối và điều khiển rất nhiều thiết bị điện tử/cơ khí khác

Trang 21

• Ngõ HDMI: dùng để kết nối Raspberry Pi với màn hình máy tính hay tivi có hỗtrợ cổng HDMI.

• Ngõ RCA Video (analog): khi thiết kế Raspberry Pi người ta cũng tính đếntrường hợp người sử dụng ở các nước đang phát triển không có điều kiện sắmmột chiếc tivi đời mới tích hợp cổng HDMI Vì vậy cổng video analog nàyđược thêm vào, giúp người dùng có thể kết nối với chiếc tivi đời cũ mà khôngphải lo lắng

• Ngõ audio 3.5mm: kết nối dễ dàng với loa ngoài hay headphone Đối với tivi cócổng HDMI, ngõ âm thanh được tích hợp theo đường tín hiệu HDMI nên khôngcần sử dụng ngõ audio này

• Cổng USB: Có thể mở rộng phạm vi ứng dụng nhờ vào việc tích hợp 2 cổngUSB 2.0 để có thể kết nối với bàn phím, chuột hay webcam, bộ thu GPS… VìRaspberry Pi chạy Linux nên hầu hết thiết bị chỉ cần cắm-và-chạy (Plug-&-Play) mà không cần cài driver phức tạp

• Cổng Ethernet: cho phép kết nối Internet tốc độ tối đa 100Mbps

• Khe cắm thẻ SD: Raspberry Pi không tích hợp ổ cứng Thay vào đó nó dùng thẻ

SD để lưu trữ dữ liệu Toàn bộ hệ điều hành Linux sẽ hoạt động trên thẻ SD này

vì vậy nó cần kích thước thẻ nhớ tối thiểu 4 GB và dung lượng hỗ trợ tối đa là32GB

• Đèn LED: trên Pi có 5 đèn LED để hiển thị tình trạng hoạt động

• Jack nguồn micro USB 5V, tối thiểu 700mA: nhờ thiết kế này mà chúng ta cóthể tận dụng hầu hết các sạc điện thoại di động trên thị trường để cấp nguồnđiện cho Raspberry Pi

 Sơ đồ các chân ngõ vào ra trên Raspberry Pi model B:

Hình 3.5: Sơ đồ chân GPIO của Raspberry

Đặc tính điện của các chân GPIO:

Trang 22

• Có tổng cộng 26 chân được chia thành 2 hàng.

• Các chân GPIO có điện áp ngõ ra là 3V3

• Dòng điện ngõ ra max trên các chân GPIO là 50 mA

• Các chân có nhiều chức năng bao gồm:

 SPI bus

Pin 19 = SPI0 MOSIPin 21 = SPI0 MISOPin 23 = SPI0 SCLKPin 24 = SPI0 CE0Pin 26 = SPI0 CE1

3.2.3 Phụ kiện hỗ trợ kèm theo

Raspberry Pi được bán dưới dạng một board mạch đơn lẻ không đi kèm phụ kiện nhằm giảm chi phí sản xuất, vì vậy người sử dụng có thể tự lựa chọn phụ kiện tùy theomục đích sử dụng Sau đây sẽ là tổng hợp một số phụ kiện hữu ích cho Pi:

Phụ kiện cơ bản:

 Nguồn: loại có jack micro USB, 5V, tối thiểu 700mA

 Thẻ nhớ SD: đây là nơi lưu trữ toàn bộ hệ điều hành của Raspberry Pi và cả dữliệu do đó nên đầu tư thẻ nhớ thật tốt, tốc độ từ class 6 trở lên Pi hoạt động trên thẻnhớ có dung lượng ít nhất là 4 GB

 Bàn phím + chuột: là hai thành phần nhập liệu cơ bản của máy tính

 Cáp mạng: để kết nối Internet hoặc kết nối với máy tính Chỉ cần cáp RJ45 bìnhthường, bắt chéo hay không đều được

 Cáp màn hình: tùy theo loại màn hình sử dụng mà tương thích với cáp HDMI hoặc HDMI-DVI hoặc HDMI-VGA hay RCA Video

HDMI- Case bảo vệ: để tránh vô tình chạm vào mạch điện của Raspberry Pi hoặc bảo

vệ Raspberry Pi khi đặt ở ngoài trời thì case bảo vệ là rất cần thiết

Trang 23

Hình 3.6: Phụ kiện kèm theo với Raspberry Pi

Phụ kiện mở rộng:

 Webcam hoặc Pi camera module (25$): cả hai đều hoạt động tốt trên Raspberry

Pi Điểm khác biệt là webcam kết nối qua USB còn camera module sử dụng khecắm CSI có sẵn trên Raspberry Pi Chất lượng của camera module được đánh giá rấttốt so với giá tiền và quan trọng hơn là nó có thể tận dụng sức mạnh của bộ xử lý đồhọa Video Core IV trên Pi mà webcam không truy cập được Ngoài ra thì webcamđược bán dưới dạng sản phẩm đóng gói hoàn chỉnh còn camera module thì dướidạng board module nên người dùng phải sử dụng cẩn thận hơn

 Wifi USB dongle: Raspberry Pi hỗ trợ dùng thiết bị wifi dongle để kết nối Pivới mạng wifi thông qua qua cổng USB 2 sản phẩm được sử dụng phổ biến làEdimax EW-7811Un và Ralink RT5370 vì rất nhỏ gọn, giá thành rẻ (khoảng 10$)

và hoạt động tốt trên Pi Riêng loại Ralink thì còn có thể kiêm luôn chức năng hotspot phát wifi

 Màn hình cảm ứng: gắn lên Raspberry Pi thay cho bàn phím và chuột giá bánkhoảng 30$

Trang 24

Trong nhiều ứng dụng có không gian hạn chế chẳng hạn như dùng Raspberry Pi

để điều khiển cửa tự động thì người ta thường không muốn kết nối rườm rà màn hình,bàn phím, chuột lên Raspberry Pi mà vẫn có thể khiển được nó Khi đó ta có thể sửdụng 2 công nghệ phổ biến để điều khiển Raspberry Pi từ xa bằng một máy tính khác

là SSH và VNC Mỗi công nghệ có đặc điểm riêng phù hợp với từng ứng dụng màmình sẽ trình bày sau đây

Yêu cầu chung: phải biết địa chỉ IP của thiết bị được điều khiển Trong trường hợp này

ta cần biết địa chỉ IP của Raspberry Pi bằng cách gõ từ LXTerminal ta gõ commandline sau:

sudo ifconfig

Hình 3.7: Thông tin địa chỉ IP

Ở phần eth0, inet addr chính là địa chỉ IP Trong hình minh họa trên, địa chỉ IPchính là 192.168.1.9

Lưu ý: đây là địa chỉ IP động nên có thể thay đổi sau mỗi lần khởi động lại Raspberry.

Có thể chỉnh thành IP tĩnh bằng lệnh:

sudo nano /etc/network/interfaces

Trang 25

trong phần eth0 đặt các thông số địa chỉ IP như mong muốn rồi lưu lại và thoát ra bằng cách nhấn Ctrl + X Khởi động lại Raspberry để có hiệu lực.

3.2.4.1 Giao tiếp Raspberry Pi bằng SSH

SSH là viết tắt của Secure Shell, là một phương thức trao đổi dữ liệu an toàn vàđơn giản Để sử dụng SSH ta phải cài đặt trên cả Raspberry Pi lẫn máy tính

3.2.4.1.1 Cài đặt SSH server trên Raspberry Pi

Raspbian đã tích hợp sẵn SSH nên để sử dụng chúng ta chỉ cần activate SSHserver ở menu Rasp-config bằng cách gõ ở LXTerminal:

sudo raspi-config

Lúc này màn hình Raspi-config sẽ hiện ra cho phép tùy chỉnh nhiều thông số hệthống của Pi Chọn mục Advance Options – SSH – Enable rồi OK

Hình 3.8: Giao diện raspi-config

3.2.4.1.2 Cài đặt SSH client trên máy tính Windows

Download phần mềm PuTTYvà chạy không cần cài đặt

Trên giao diện của PuTTY chúng ta nhập địa chỉ IP của Raspberry Pi vào rồi

Trang 26

raspberry) Nếu thành công thì máy tính sẽ xác nhận và hiển thị màn hình commandline của Raspberry Pi Lúc này có thể điều khiển Raspberry Pi bằng giao diện dòng lệnh.

Hình 3.9: Giao diện PuTTY trên máy tính

Hình 3.10: Màn hình điều khiển Raspberry bằng SSH

Như đã thấy, điều khiển Raspberry Pi bằng SSH khá đơn giản SSH sử dụng rất íttài nguyên máy của Raspberry Pi do không phải chạy phần đồ họa vì vậy thích hợpcho các ứng dụng cần nhiều tài nguyên tính toán.Tuy nhiên nhược điểm của SSH là

Trang 27

chỉ cho phép truy cập vào môi trường dòng lệnh Trong trường hợp cần điều khiểndesktop của Pi thì VNC (Virtual Network Computing) là một giải pháp tốt.

3.2.4.2 Giao tiếp Raspberry Pi bằng VNC (Virtual Network Computing)

VNC là công nghệ cho phép máy tính truy cập vào môi trường desktop lẫn bànphím và chuột của một máy tính khác Để sử dụng VNC thì ta cần cài đặt VNC serverlên máy tính được điều khiển, và VNC client lên máy tính điều khiển Trong trườnghợp này ta muốn điều khiển Raspberry Pi từ xa thì ta cài VNC server lên Raspberry Pi

3.2.4.2.1 Cài đặt VNC server trên Raspberry Pi

Có nhiều phần mềm có chức năng làm VNC server trong đó tốt nhất là sử dụng

TightVNCserver Cách thức cài đặt và mở TightVNCserver trên LXTerminal như sau:

sudo apt-get install tightvncserver

tightvncserver

Khi chạy VNC lần đầu thì nó sẽ yêu cầu tạo một password truy cập Đây cũng làpassword được hỏi khi muốn truy cập vào Raspberry Pi nhằm tránh tình trạng truy cậptrái phép Ngoài ra TightVNC còn cho phép đặt password dạng view-only tức là chỉcho phép thấy màn hình nhưng không điều khiển được bàn phím hay chuột

Sau khi đặt password thì TightVNC sẽ tạo một màn hình ảo của Raspberry Pi đểmáy tính khác truy cập vào Muốn truy cập màn hình này cần có password xác nhận ởtrên, địa chỉ IP của Pi và cổng truy cập (port) Port mặc định của VNC là 5900 Nhưvậy muốn truy cập vào màn hình số 1 thì dùng địa chỉ: 192.168.1.9::5901 Tương tựnếu có một máy tính khác muốn truy cập màn hình số 2 thì sẽ dùng địa chỉ192.168.1.9::5902 Lưu ý là màn hình số 1 hay số 2 chỉ là màn hình ảo và độc lập vớinhau, ai cũng điều khiển được nhưng không ai thấy người khác đang làm gì

3.2.4.2.2 Cài đặt VNC client trên Windows

Sau khi cài đặt ta mở VNC client lên bằng cách click Start – TightVNC –TightVNC Viewer, rồi nhập địa chỉ truy cập, click Connect và điền password truy cập

Trang 28

Hình 3.11: Giao diện TightVNC Viewer trên máy tính

Hình 3.12: Màn hình điều khiển Pi từ máy tính

Ngoài ra phần mềm TightVNC này còn tích hợp cả VNC server lẫn client nên cóthể sử dụng trong trường hợp ngược lại: dùng Pi để điều khiển máy tính

3.2.5 Cấu hình UART và cài đặt thư viện WebIOPi trên Raspberry Pi

Trang 29

 Cấu hình UART:

Để sử dụng chức năng truyền nhận dữ liệu UART trên Raspberry cần phảicấu hình lại như sau:

- Chỉnh sửa file cmdline.txt, dùng lệnh: sudo nano /boot/cmdline.txt

Xóa đoạn sau: console=ttyAMA0,115200 kgdboc=ttyAMA0,115200

Sau đó nhấn Ctrl + X để thoát và lưu lại

- Chỉnh sửa file inittab: sudo nano /etc/inittab

Tìm dòng

T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100

rồi thêm dấu “#” vào đầu dòng để chỉnh sửa thành chú thích.

Nhấn Ctrl + X để thoát và lưu lại

- Khởi động lại để có hiệu lực: sudo reboot

 Cài đặt thư viện WebIOPi:

Trong đồ án có sử dụng thư viện WebIOPi để sử dụng trên chương trìnhviết bằng Python, cài đặt như sau:

• Cài đặt WebIOPi SVN:

$ sudo aptitude update

$ sudo aptitude install subversion

$ svn checkout http://webiopi.googlecode.com/svn/trunk/ webiopi-trunk

3.3.1 Cấu tạo và sơ đồ chân

Sơ đồ chân của vi điều khiển PIC16F887 loại 40 chân như sau:

Trang 30

Hình 3.13: Sơ đồ chân của PIC16F887.

Các khối bên trong vi điều khiển bao gồm:

• Các khối thanh ghi định cấu hình cho vi điều khiển

• Các khối bộ nhớ chương trình có nhiều dung lượng cho 5 loại khác nhau

• Khối bộ nhớ ngăn xếp 8 cấp (8 level stack)

• Khối bộ nhớ RAM cùng với thanh ghi FSR để tính toán tạo địa chỉ cho 2 cách truyxuất gián tiếp và trực tiếp

• Có thanh ghi lệnh (Instruction Register) dùng để lưu mã lệnh nhận về từ bộ nhớchương trình

• Có thanh ghi bộ đếm chương trình PC dùng để quản lý địa chỉ của bộ nhớ chươngtrình

• Có thanh ghi trạng thái (Status Register) cho biết trạng thái sau khi tính toán ALU

• Có thanh ghi FSR

• Khối ALU cùng với thanh ghi working hay thanh ghi A để xử lý dữ liệu

• Khối giải mã lệnh và điều khiển (Instruction Decode and control)

• Khối các bộ định thời khi cấp điện PUT, có bộ định thời chờ dao động ổn định, cómạch reset khi có điện, có bộ định thời giám sát watchdog, có mạch reset khi pháthiện sụt giảm nguồn

• Khối dao động nội (Internal Oscillator Block)

• Khối dao động kết nối với 2 ngõ OSC1 và OSC2 để tạo dao động

• Khối bộ dao động cho timer1 có tần số 32 KHz kết nối với 2 ngõ vào T1OSI vàT1OSO

• Khối CCP2 và ECCP

• Khối mạch gỡ rối (In-Curcuit Debugger IDC)

Trang 31

• Khối timer0 với ngõ vào xung đếmtừ bên ngoài là T0CKI.

• Khối truyền dữ liệu đồng bộ/bất đồng bộ nâng cao

• Khối truyền dữ liệu đồng bộ MSSP cho SPI và I2C

• Khối bộ nhớ Eeprom 256 byte và thanh ghi quản lý địa chỉ EEADDR và thanh ghi

dữ liệu EEADATA

• Khối chuyển đổi tín hiệu tương tự sang số ADC

• Khối 2 bộ so sánh với nhiều ngõ vào ra và điện áp tham chiếu

• Khối các Port A, B, C, D và E

Trang 32

Hình 3.14: Cấu tạo bên trong PIC16F887

Trang 33

3.3.2 Các khối chức năng được sử dụng

 Hai ngõ vào Vref+ và Vref- có chức năng thiết lập độ phân giải cho ADC

 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

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ênhnào thì phụ thuộc vào 4 bit chọn kênh CHS3:CHS0 Hai ngõ vào điện áp tham chiếudươ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

3.3.2.2 Timer/Counter:

 Timer/Counter0:

Hình 3.15: Sơ đồ khối của timer0 của PIC 16F887

Bộ timer/counter0 có những đặc điểm sau:

• Là timer/counter 8 bit

• Có thể đọc và ghi giá trị đếm của timer/counter

• Có bộ chia trước 8 bit cho phép lập trình lựa chọn hệ số chia bằng phần mềm

Trang 34

• Phát sinh ngắt khi bị tràn từ FFH về 00H.

• Cho phép lụa chọn tác động cung CK cạnh lên hoặc cạnh xuống

 Timer/Counter1

Bộ timer/counter1 có những đặc điểm sau:

• Là timer/counter 16 bit bao gồm hai thanh ghi 8 bit TMR1L và TMR1H vớigiá trị tối đa có là 65,535

• Cho phép hoạt động với xung nội và xung ngoại

• Có 3 bit cho phép lập trình chọn tỷ lệ chia xung

• Có chế độ xung dao động thấp LP Oscillator

• Hoạt động đồng bộ hoạt bất đồng bộ

• Chân gate control phục vụ cho bộ so sánh

• Cho phép ngắt khi có tràm thanh ghi

• Cho phép ngắt tác động bên ngoài

• Có chế độ lưu giá trị xung

Trang 35

Hình 3.18: Sơ đồ cấu trúc Timer/Counter1của Pic16F887

Trang 36

• Chỉ lấy xung từ nguồn dao động nội.

• Có hai bit để lập trình tỉ lệ chia xung T2CKPS1 và T2CKPS0 với 3 giá trị chia

• Có thêm 4 bit để lập trình tỉ lệ chia xung TOUTPS0, TOUTPS1,

TOUTPS2, TOUTPS3 Với 16 giá trị

Hình 3.20: Sơ đồ cấu trúc Timer2 Bảng giá trị chia tương ứng với giá trị 2 bit T2CKPS1 và T2CKPS0

Bảng giá trị chia tương ứng với giá trị 4 bit TOUTPS0, TOUTPS1, TOUTPS2, TOUTPS3

Trang 37

1 1 1 0 1:15

3.3.2.3 Giao thức truyền dữ liệu UART:

UART là viết tắt của Universal Asynchronous Receiver – Transmitter Thường làmột mạch tích hợp được sử dụng trong việc truyền dẫn dữ liệu nối tiếp giữa máy tính

và các thiết bị ngoại vi Rất nhiều vi điều khiển hiện nay đã được tích hợp UART, vìvấn đề tốc độ và độ điện dụng của UART không thể so sánh với các giao tiếp mới hiệnnay nên các dòng PC & Laptop đời mới không còn tích hợp cổng UART

Để bắt đầu cho việc truyền dữ liệu bằng UART, một START bit được gửi đi, sau đó làcác bit dữ liệu và kết thúc quá trình truyền là STOP bit

Hình 3.21: Khung dữ liệu truyền UART

Như hình có thể thấy, khi ở rạng thái chờ mức điện thế ở mức 1 (high) Khi bắtđầu truyền START bit sẽ chuyển từ 1 xuống 0 để báo hiệu cho bộ nhận là quá trìnhtruyền dữ liệu sắp xảy ra Sau START bit là đến các bit dữ liệu D0-D7 (Theo hình vẽcác bit này có thể ở mức cao hoặc thấp tùy theo dữ liệu) Sau khi truyền hết dữ liệu thìđến Bit Parity để bộ nhận kiểm tra tính đúng đắn của dữ liệu truyền Cuối cùng làSTOP bit là 1 báo cho thiết bị rằng các bit đã được gửi xong Thiết bị nhận sẽ tiếnhành kiểm tra khung truyền nhằm đảm báo tính đúng đắn của dữ liệu

Các thông số cơ bản trong truyền nhận UART:

- Baund rate (tốc độ baund): Khoảng thời gian dành cho 1 bit được truyền Phảiđược cài đặt giống nhau ở gửi và nhận

- Frame (khung truyền): Khung truyền quy định về số bit trong mỗi lần truyền

- Start bit (bit bắt buộc) là bit đầu tiên được truyền trong 1 Frame Báo hiệu chothiết bị nhận có một gói dữ liệu sắp được truyền đến

- Data: dữ liệu cần truyền Bit có trọng số nhỏ nhất LSB được truyền trước sau

đó đến bit MSB

- Parity bit: kiểm tra dữ liệu truyền có đúng không

Ngày đăng: 15/03/2015, 20:48

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
1. Nguyễn Đình Phú, Giáo trình vi xử lý 2, Đại học Sư Phạm Kỹ Thuật TP.HCM, 2012 Khác
2. Nguyễn Đình Phú – Trương Thị Bích Ngà, Điện tử cơ bản 2, Đại học Sư Phạm Kỹ Thuật TP.HCM, 2007 Khác
3. Giáo trình lập trình C căn bản, Đại học Sư Phạm Kỹ Thuật TP.HCM, 2010 Khác
4. Đậu Trọng Hiển, Giáo trình Lập trình nhúng, Đại học Sư Phạm Kỹ Thuật TP.HCM, 2013 Khác
5. Nguyễn Việt Hùng – Nguyễn Ngô Lâm – Nguyễn Văn Phúc, Giáo trình kỹ thuật truyền số liệu, Đại học Sư Phạm Kỹ Thuật TP.HCM, 2012 Khác

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w