Tải bản đầy đủ (.docx) (17 trang)

BÁO cáo hệ THỐNG NHÚNG đề TÀITHIẾT kế hệ THỐNG đếm sản PHẨM

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.12 MB, 17 trang )

TRƯỜNG ĐẠI HỌC HÀNG HẢI VIỆT NAM
KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO HỆ THỐNG NHÚNG
ĐỀ TÀI:THIẾT KẾ HỆ THỐNG ĐẾM SẢN PHẨM

Giảng viên hướng dẫn : TS.Nguyễn Trọng Đức
Sinh viên Thực Hiện : Nguyễn Bá Mạnh- 45316
Đào Trung AnhLê Tường Sơn - 45328
Trần Thái Long-

HẢI PHÒNG 2016

1


2

MỤC LỤC

2


3

Chương 1.MỞ ĐẦU
Ngày nay, công nghệ thông tin đã phát triển với tốc độ nhanh chóng, nó đã trở
thành một ngành công nghiệp mũi nhọn trên thế giới cũng như ở Việt Nam. Việc tin
học hoá đã được ứng dụng rộng rãi trong nhiều lĩnh vực khoa học công nghệ, kinh tế,
quân sự và nhiều ngành, nghề khác.
Trên thị trường hiện nay, các doanh nghiệp đang phải tăng cường tối đa hiệu


quả cung cấp các dịch vụ của mình, để đạt được mục tiêu này, họ phải dựa vào một
trong những tài sản lớn nhất của mình đó là nguồn nhân lực. Các công tác quản lý,
chấm công theo phương pháp thủ công đã không còn khả năng đáp ứng được nhu cầu
thực tế công việc đòi hỏi, do đó việc ứng dụng tin học vào trong công tác quản lý là
hết sức cần thiết, nó đạt hiệu quả cao về thời gian, không gian đem lại lợi ích kinh tế,
sự thuận tiện cho người sử dụng và đảm bảo tính chính xác, minh bạch về thông tin.
Mặt khác, công nghệ “Đếm sản phẩm tự động” đang trở lên phổ biến trong mỗi
công ty, doanh nghiệp sản xuất sản phẩm, cửa hàng, ngân hàng…. các thiết bị giá
thành ngày càng rẻ. Với ưu điểm đó nhóm em đã lựa chọn đề tài: “ Thiết kế hệ thống
đếm sản phẩm tự động” làm đề tài làm đề tài bài tập lớn của bọn em.
Mục tiêu của đề tài nhằm xây dựng hệ thống bao gồm các khối phần cứng và
phần mềm đi kèm đáp ứng chức năng đếm số lượng sản phẩm một cách chính xác thay
cho con người, từ đó đưa đến cách nhìn tổng quát cho chủ doanh nghiệp về hoạt động
của doanh nghiệp.

3


4

Chương 2.CÁC KHỐI CHÍNH VÀ CHỨC NĂNG
2.1 SƠ ĐỒ KHỐI CỦA HỆ THỐNG
Khối Thiết Bị

Khối Xử Lý Tín

Đọc Tín Hiệu

Hiệu


Khối
Hiển Thị Kết
Quả

2.1.1 Khối thiết bị đọc tín hiệu
Là khối nhận biết vật cản (sản phẩm) và phát tín hiệu điều khiển về khối vi điều
khiển, ở đây ta sử dụng led thu-phát hồng ngoại để làm công việc này.
• Khối gồm có các thiết bị: 1quang trở CDS 5MM, 1 đèn led phát quang, 2
điện trở 10k ôm.

4


5

Quang trở: quang trở được xem như 1 điệ trở nhưng khi ta chiếu ánh sáng vào
thì hiệu điện thế của nó sẽ tăng đồng nghĩa với việc điện trở tăng(U=IR)
• Cơ chế hoạt động của khối
Khi hệ thống được mở thì đèn led sẽ sáng và chiếu thẳng vào quang trở
lúc này hiệu điện thế quang trở đạt lớn nhất và giá trị hiệu điện thế này được
gửi về cho khối xử lý tín hiệu. Khi có sản phẩm đi qua, sản phẩm che mất ánh
sáng từ đèn led chiếu đến quang trở do đó điện trở quang trở lúc này giảm
xuống đồng nghĩa vs việc hiệu điện thế giảm và giá trị này lại được gửi về khối
xử lý tín hiệu.
2.1.2 Khối xử lý
Là hận tín giá trị điện thay đổi được gửi từ khối thiết bị đọc tín hiệu
• Khối gồm có : sử dụng mạch phát triển Arduino Uno R3.

5



-

6
Khối chuyển đổi Serial – USB: giao tiếp COM ảo qua cổng USB, nạp chương

-

trình.
Khối nguồn: cân bằng điện áp cho đúng với điện áp yêu cầu, cung cấp nguồn điện

-

cho toàn hệ thống.
Các cổng điện áp: cung cấp điện áp đầu ra cho các thiết bị.
Các cổng Analog in: cổng logic 0-1 vào với mức điện 0-5V tương ứng.
Khối các cổng Digital in-out: có thể nhận điện áp vào hoặc xuất điện áp ra. Các
cổng này có thể xuất xung PWM.
- Thông tin:
Vi điều khiển

ATmega328

Điện áp hoạt động

5V – DC

Tần số hoạt động

16 MHz


Dòng tiêu thụ

30 mA

Điện áp khuyên dùng

7-12V – DC

Điện áp giới hạn

6-20V – DC

Số chân Digital

14 ( 6 chân PWM)

Số chân Analog

6

Dòng tối đa mỗi chân I/O

30 mA

Dòng ra tối đa chân 5V

500 mA

Dòng ra tối đa chân 3.3V


50 mA

Bộ nhớ Flash

32KB (0.5 KB sử dụng làm bootloader)

SRAM

2 KB

EEPROM

1 KB

• Thông tin chi tiết của Arduino Uno R3
-

Vi điều khiển

Arduino Uno có thể sử dụng 3 vi kiều khiển họ 8bit là ATmega8, ATmega168,
ATmega328. Điểm khác biệt của 3 vi điều khiển này là dung lượng bộ nhớ Flash.
Trong hệ thống này ta sử dụng ATmega328.

6


7

Hình ảnh Atmega 328 và sơ đồ chân kết nối

Đặc điểm:
-

Cấu trúc RISC với khoảng 133 lệnh ASM, hầu hết thực hiện trong một chu

kỳ máy.
-

32 thanh ghi đa năng làm việc như các vùng nhớ tốc độ cao.
Tốc độ thực hiện lệnh tối đa 16 MIPS (với thạch anh 16MHz, không chia

tần).
-

32KB bộ nhớ Flash, dùng làm bộ nhớ chương trình, cho phép nạp xoá.
1KBytes EEPROM, dùng để lưu các biến ngay cả khi không được cấp điện.
2KB SRAM dùng để lưu kết quả trung gian, làm bộ nhớ vào ra và dùng cho

stack.
-

Giao diện JTAG, cho phép nạp xoá Flash 10.000 lần, EEPROM

-

100.000 lần, Fulse Bits, Lock Bits.
Các chức năng ngoại vi tích hợp sẵn: 2 bộ Timer 8 bits với nhiều chế độ
hoạt động, 2 bộ Timer 16 bits có bộ chia tần riêng, các chế độ đếm, định

thời, so sánh (compare mode) và bắt giữ (capture mode).

- Bộ đồng hồ thời gian thực.
- 2 kênh điều chế độ rộng xung PWM có độ phân giải 8bit.
- 4 kênh điều chế độ rộng xung PWM có độ phân giải 2 đến 16 bits.
- Bộ ADC 10bit.
- Chuẩn giao tiếp TWI (I2C).
- Chuẩn truyền thông USART.
• Cơ chế hoạt động

7


8
Sau khi nhận được giá trị điện áp của quang trở gửi về chân ANALOG IN
A0 từ khối đọc tín hiệu, nếu giá trị điện áp nhỏ hơn 900mv thì số lượng sản
phẩm sẽ được cộng thêm 1 nghĩa là sản phẩm đã đi qua khối đọc tín hiệu
,ngược lại nếu giá trị điện áp lớn hơn hoặc bằng 900mV thì số lượng sản
phẩm giữ nguyên nghĩa là sản phẩm chưa đi qua khối đọc tín hiệu. Tiếp theo
sau khi nhận và xử lý tín hiệu điện xong khối tiếp tục xử lý biến số lượng
thành dạng chuỗi rồi gửi cho khối hiển thị kết quả.

2.1.3 Khối hiển thị kết quả
Là khối hiển thị biến đếm ở dạng chuỗi ra màn hình sau khi được gửi từ khối xử lý
• Khối sử dụng một màn hình Module LCD5110 nền xanh chữ đen (84x84).
• Màn hình 5110 LCD Graphic có tát cả 84x48 điểm ảnh (pixel) được driver
bởi IC PCD8544

-

8


Thứ tự và chức năng các chân LCD NOKIA 5110.
1:RST:Chân reset LCD
2: CE: Chân cho phép hoặc không cho phép LCD hoạt động.
3: DC: Chân chọn dữ liệu gửi đến LCD là lệnh hay là dữ liệu để hiển thị ra
màn hình.
4: DIN: Chân truyền dữ liệu theo chuẩn SPI.
5: CLK: Chân truyền xung nhịp theo chuẩn SPI.
6: VCC: Chân cấp nguồn cho LCD.
7: BL: Chân cấp nguồn cho led nền màn hình LCD.
8: GND: Chân mass.


-

9
Ngoài chuẩn SPI với 3 đường tín hiệu chuẩn ( CS (CE), SCK(CLK),
MOSI(DI)) thì Nokia LCD này cần thêm 2 đường nữa, đó là D/C

-

(Data/Command) và RST (Reset).
Giao tiếp với LCD NOKIA 5110
Quá trình gửi dữ liệu từ vi điều khiển đến LCD NOKIA 5110 được chia
làm 2 chế độ. Chế độ gửi lệnh điiều khiển LCD và chế độ gửi dữ liệu hiển
thị ra LCD. Đường tín hiệu DC cho phép chọn 1 trong 2 chế độ này.
Nếu DC=0: dữ liệu gửi đến LCD được lưu vào thanh ghi Command.
Thanh ghi Command lưu trữ và thực thi các lệnh dùng để điều khiển sự
hoạt động của Nokia LCD (dữ liệu này không được hiển thị ra màn hình).

Nếu DC=1: dữ liệu gửi đến LCD được lưu vào thanh ghi Data. Thanh hi

Data lưu trữ các giá trị dữ liệu hiển thị lên màn hình LCD.

Tín hiệu reset LCD được tạo ra khi chân RST được kéo xuống mức thâp
(tức
RST=0).
Khi đang truyền dữ liệu, nếu có tín hiệu reset LCD thì quá trình truyền sẽ bị
hủy. Cho đến khi chân RST ở mức cao (tức RST=1), trong chu kì xung
clock tiếp theo, quá trinh truyền dữ liệu của byte vừa bị hủy sẽ được thực
hiện

9


10
Khi đường tín hiệu CE ở mức cao (tức CE=1), thì LCD sẽ không
chấp nhận bất kỳ một dữ liệu nào từ VĐK gửi đến hay mọi dữ liệu hoặc
lệnh

lúc

này

đều

không

ảnh

hưởng


đến

LCD.

Khi đường tín hiệu CE ở mức thấp (tức CE=0) thì data gửi đến LCD sẽ
được chấp nhận cứ Sau mỗi chu kì của xung clock (xung cạnh lên) thì 1 bit
dữ

liệu

được

dịch

vào

LCD

trên

chân

DIN.

Chân CE phải được giữ ở mức thấp(tức CE=0) cho tới khi việc gửi dữ liệu
đến LCD hoàn tất.
-

Một số lệnh cơ bản điều khiển LCD NOKIA 5110.
• Lệnh Function set : Set chế độ hoạt động cho LCD.


Các lệnh trong chế độ cho phép sử dụng các lệnh cơ bản (khi H=0).
Lệnh Set địa chỉ dòng (set Y address).

LCD Nokia 5110 hiển thị được 6 dòng (0 ->5), vì vậy chỉ cần 3 bit Y2, Y1, Y0,
để chứa giá trị lựa chọn dòng hiển thị.

- Lệnh Set địa chỉ cột (Set X address).

10


11

LCD Nokia 5110 có tất cả 84 cột (0 ->83), nên cần đến 7 bít (X0->X6 ) để chứa
giá trị lựa chọn cột hiển thị.
- Lệnh cài đặt hiển thị (Display Control).

ý nghĩa của các bit D, E :

• Các lệnh trong chế độ cho phép sử dụng các lệnh bổ sung (H=1).
Lệnh Set Bias (CommandBias System ).
Đây là lệnh để thiết lập giá trị của Bias được xác định bởi các Bit BS2, BS1 và
BS0.

11


12


- Lệnh Set điện áp hoạt động cho LCD. (Set Vop).

Các bạn có thể set các bit từ Vop6 ->Vop0 để chọn điện áp hoạt động cho LCD,
dựa vào công thức sau.

với giá trị của a, b là: a=3.06, b=0.06

12


13
Ví dụ: Để chọn điện áp hoạt động của LCD là 5V, ta làm như sau:
Theo công thức ta sẽ có:
5V = 3.06 + (Vop6 ->Vop0)*0.06
từ đó suy ra: (Vop6 ->Vop0) =32,33. Ta sẽ chọn số nguyên là 32 hay bằng
20H=0100000B.
Vậy, giá trị đưa vào LCD để set giá trị điên áp cho LCD là: 11000000B hay
C0h.
Có 1 số lệnh khác trong chế độ H=1
a. Ưu điểm của các thiết bị:
Hồng Ngoại Thu và Phát tín Hiệu: nhỏ gọn, dễ kết nối, hoạt động hiệu quả.
Arduino Uno: nhỏ gọn, mạch được làm với hệ thống máy hiện đại, đảm bảo các
mối hàn luôn được bảo vệ. Có sẵn khối chuyển đổi Serial – USB giao tiếp trực
tiếp với máy tính không cần thêm bộ chuyển đổi RS232. Sử dụng trực tiếp
nguồn điện từ cổng USB vì thế không cần lắp bổ sung thêm nguồn phụ. Dễ
dàng tháo lắp, thay đổi chip xử lý (AVR họ 8 bit). Nạp chương trình trực tiếp
thông qua chip ATmega16U2 gẵn trên mạch được nạp sẵn firmware. Ngôn ngữ
lập trình dựa theo C/C++ đơn giản, dễ hiểu; chương trình lập trình tiện dụng,
tích hợp sẵn Serial Monitor
Màn Hình Module LCD5110: Nhỏ gọn dễ kết nối hiển thị đầu đủ thông tin

người sử dụng yêu cầu


13


14

Chương 3.Hệ thống điều khiển

3.1 Lưu đồ thuật toán

Lưu đồ thuật toán trên bộ vi xử lý

-

Hoạt động của hệ thống:
Bước 1: Khởi tạo phiên truyền thông, khởi tạo các thiêt bị, kết nối.
Bước 2: Khởi tạo bộ đếm i=0.
Bước 3: Tiếp nhận 32bit dữ liệu từ bộ đọc.
Bước 4: Kiểm tra xem i đã bằng 5 hay chưa, nếu chưa thì quay lại bước 3.
Bước 5: Nếu i=5, tiến hành gửi dữ liệu tới server. Đồng thời Speaker (Pin 3)

-

kêu.
Bước 6: Kết thúc khi đã tiếp nhận xong dữ liệu.

14



15
3.2 Sơ đồ phần cứng

3.3 Code chương trình nạp mạch Arduino
Ở đây chúng ta sử dụng phần mềm lập trình Arduino là phần mềm lập trình
dành riêng cho các dòng Kit Arduino.
//
//
//
//
//
//
//

MOSI or DIN - Pin 6 arduino
DC - Pin 5 arduino
RST - Pin 3 arduino
CS or CE - Pin 4 arduino
VCC - 3.3 volt arduino
BL - 5 volt arduino
GND- ground of arduino

#include <LCD5110_Graph.h>
LCD5110 myGLCD(7,6,5,3,4);
extern uint8_t SmallFont[];
extern uint8_t BigNumbers[];
int dem=0;
void setup()
{

myGLCD.InitLCD();
15


16
myGLCD.setFont(SmallFont);
myGLCD.print("SO LUONG:", CENTER, 0);
myGLCD.print("NHOM 7 K53", CENTER, 38);
myGLCD.setFont(BigNumbers);
myGLCD.print(String(0), CENTER, 10);
myGLCD.update();
Serial.begin(9600);
}
void loop()
{
delay(1000);
Serial.println(analogRead(1));
if(analogRead(1)<900)
{
dem++;
myGLCD.setFont(BigNumbers);
myGLCD.print(String(dem), CENTER, 10);
myGLCD.update();
}
}
3.4 Giao diện hệ thống

16




×