Tải bản đầy đủ (.doc) (93 trang)

Thiết kế hệ thống điều khiển vị trí ứng dụng trong máy CNC

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.28 MB, 93 trang )

Đồ án tốt nghiệp
MỤC LỤC
CHƯƠNG I. GIỚI THIỆU VỀ MÁY NC VÀ CNC 3
1.1. Các khái niệm về hệ thống CNC 3
1.1.1. Khái niệm về điều khiển số 3
1.1.2. Ưu điểm nổi bật của máy CNC 5
1.1.3. Các điểm gốc(điểm 0) 5
1.1.4. Các dạng điều khiển 6
1.2. Hệ thống đo lường trong điều khiển CNC 7
1.2.1. Thiết bị đo tốc độ 8
1.2.2. Thiết bị đo vị trí 8
1.2.3. Các phương pháp đo trên máy 9
1.3. Mục tiêu của đồ án 11
1.3.1 Mục tiêu 11
1.3.2. Sơ đồ tổng quát của hệ thống 11
CHƯƠNG II. LỰA CHỌN CÁC THIẾT BỊ CỦA HỆ THỐNG 12
2.1. Lựa chọn bộ điều khiển 12
2.1.1. Giới thiệu một số phương án 12
2.1.2. Giới thiệu về máy tính và khả năng ghép nối của máy tính 12
2.1.3. Giới thiệu về AVR ATMEGA16 13
2.2. Lựa chọn truyền động của các trục 29
2.2.1. Động cơ bước 29
2.2.2. Động cơ điện một chiều 49
CHƯƠNG 3: THIẾT KẾ PHẦN CỨNG 53
3.1. Sơ đồ khối của mạch điều khiển 53
3.1.1. Phần thiết bị ĐK trung tâm 54
3.1.2. Phần thiết bị chấp hành 54
3.1.3. Giới thiệu về MAX232 54
3.1.4. Giới thiệu về L298: 55
3.1.5.Kết luận 59
3.1.6. Sơ đồ mạch nguyên lý 59


3.2. Thiết kế giao diện điều khiển từ trên PC 63
3.3. Khảo sát vòng điều khiển ổn định tốc độ động cơ khoan 66
3.3.1. Khái niệm 66
3.3.2.Mô hình hệ thống điều khiển dùng PID 66
3.3.3. Xây dựng bộ PID 67
4.1 Lưu đồ thuật toán điều khiển: 74
4.3.Chạy thử mô hình 77
4.3 Kết luận và hướng phát triển của đề tài 77
TÀI LIỆU THAM KHẢO 79
PHỤ LỤC 80
ĐẶT VẤN ĐỀ
1
Đồ án tốt nghiệp
Trong sự phát triển của khoa học kỹ thuật trong nhiều thành tựu mới(kỹ
thuật điện tử,kỹ thuật số…)đã được áp dụng vào lĩnh vực công nghiệp hoá,quá
trình tự động hoá với các máy công cụ ngày càng phát triển.việc tăng năng suất
giảm giá thành thiết bị điện của máy là hai yêu cầu chủ yếu đối với các hệ
truyền động điện và tự động hóa,nhưng chúng có sự mâu thuẫn nhau. Một bên
đòi hỏi hệ thống phức tạp, một bên lại yêu câu hạn chế số lượng thiết bị trên
máy.Việc lựa chọn một hệ thích hợp là một bài toán khó.
CNC(Computerized numerical control) là loại máy công cụ phổ biến và chủ
chốt trong các nhà máy, phân xưởng cơ khí hiện nay,dùng để gia công các chi
tiết cơ khí với độ chính xác và năng suất rất cao.
Với độ chính xác rất cao của việc điều khiển và giám sát vị trí của các thành
phần thực hiện chức năng (cơ cấu chấp hành) là hết sức quan trọng, do vậy cần
phải xây dựng một bộ điều khiển vị trí.
Vì những lý do trên và sự giới thiệu của giáo viên mà em đã chọn đề tài
thiết kế hệ thống điều khiển vị trí ứng dụng trong máy CNC.
Trong quá trình làm Đồ án tốt nghiệp, vì trình độ và sự hiểu biết còn hạn
chế nên nhất định không tránh khỏi những sự thiếu sót, em rất mong được sự

chỉ bảo, góp ý của các thầy cô giáo.
NỘI DUNG ĐỀ TÀI
2
Đồ án tốt nghiệp
CHƯƠNG I. GIỚI THIỆU VỀ MÁY NC VÀ CNC
Trong sự phát triển của khoa học kỹ thuật trong nhiều thành tựu mới(kỹ
thuật điện tử,kỹ thuật số…)đã được áp dụng vào lĩnh vực công nghiệp hoá,quá
trình tự động hoá với các máy công cụ ngày càng phát triển.việc tăng năng suất
giảm giá thành thiết bị điện của máy là hai yêu cầu chủ yếu đối với các hệ
truyền động điện và tự động hóa,nhưng chúng có sự mâu thuẫn nhau.một bên
đòi hỏi hệ thống phức tạp, một bên lại yêu câu hạn chế số lượng thiết bị trên
máy.Việc lựa chọn một hệ thích hợp là một bài toán khó.
CNC(Computerized numerical control) là loại máy công cụ phổ biến và
chủ chốt trong các nhà máy, phân xưởng cơ khí hiện nay,dùng để gia công các
chi tiết cơ khí với độ chính xác và năng suất rất cao.
1.1. Các khái niệm về hệ thống CNC
1.1.1. Khái niệm về điều khiển số
Ở các máy thông thường việc điều khiển chuyển động cũng như thay đổi
vận tốc của các bộ phận máy được thực hiện chủ yếu bằng tay, do đó thời gian
lãng phí lớn, năng suất thấp.Để giải quyết vấn đề đó cần phải tự động hoá quá
trình điều khiển.Trong sản xuất với khối lượng lớn ,các chi tiết của sản phẩm
giống nhau từ lâu đã đưa những quá trình tự động hoá vào quá trình điều
khiển.Những máy thuộc loại này có ưu điểm là rút ngắn thời gian phụ nhưng
thời gian chuẩn bị trước sản xuất lại quá dài(thời gian thiết kế ,chế tạo ,thời gian
điều chỉnh máy…).Nếu sản xuất với số lượng lớn thì thời gian này là không
đáng kể,tuy nhiên nếu lượng hàng sản xuất là nhỏ ,các chi tiết khác nhau nhiều
3
Đồ án tốt nghiệp
thì đây sẽ là một vấn đề lớn.Do vậy cần tìm ra phương pháp điều khiển mới
,đảm bảo thời gian điều chỉnh máy gia công từ chi tiết này sang chi tiết khác

được nhanh chóng.Yêu cầu này được thực hiện với việc điều khiển theo chương
trình.
Điều khiển theo chương trình là một dạng điều khiển tự động mà tín hiệu
điều khiển đuợc thay đổi theo một quy luật cho trước.Nói cách khác,trên các
máy điều khiển theo chương trình thì thứ tự, giá trị của các chuyển động cũng
như thứ tự đóng mở của các bộ phận trong máy, đóng mở thống làm nguội, bôi
trơn,thay dao đều được thực hiện theo một chương trình đã lập sẵn.các thiết bị
chứa chương trình được đặt vào một khối gọi là khối điều khiển, và khối này sẽ
điều khiển các thiết bị chấp hành hoạt động một cách tự động.Nếu các chương
trình được biểu thị bằng các chữ số dưới dạng mã hiệu thì ta gọi đó là hệ điều
khiển theo chương trình số.
Như vậy điều khiển số NC là hệ thống điều khiển đặc trưng bởi các đại
lượng đầu vào là nhưng tín hiệu số nhị phân,chúng được đưa vào hệ thống
dưới dạng một chương trình điều khiển có hệ thống, khi đó máy sẽ tự động làm
cho một cơ cấu di chuyển từ vị trí này sang vị trí khác bằng một hoặc nhiều
lệnh.Sự dịch chuyển có thể là theo một quỹ đạo thẳng hoặc theo góc di chuyển
với nhiều bậc tự do.
Trong nhiều trường hợp ,phương pháp điều khiển theo chương trình số
được thiết kế tự động hoá với việc di chuyển một cơ cấu từ vị trí này đến vị trí
khác, ta gọi đó là điều khiển theo điểm, tuy nhiên ta có thể rút ngắn vô thời hạn
khoảng cách giữa các điểm di chuyển gần nhau và khi ấy ta sẽ có quá trình điều
khiển theo đường.
Phương pháp điều khiển theo chương trình số có thể dùng di chuyển bất cứ
một cơ cấu nào sử dụng truyền động điện. Phạm vi sử dụng của nó rất rộng
4
Đồ án tốt nghiệp
,nhưng chủ yếu vẫn là tự động hoá các máy công cụ. Vì các chương trình số có
thể tiến hành cách xa may nhờ hệ thống truyền thông, và bản thân các máy cũng
có hệ thống đo lường riêng, do vậy hệ thống điều khiển này có thể điều khiển
một cách dễ dàng và nhanh chóng.

Ngày nay máy NC được phát triển lên thành máy CNC. Đặc điểm nổi bật
của máy CNC so voi NC là nó có cơ cấu tự động cho phép thực hiện nhiều
nguyên công khác nhau sau một lần kẹp chi tiết (giảm thiểu thời gian gia công)
dưới sự hỗ trợ của máy tính điện tử.
1.1.2. Ưu điểm nổi bật của máy CNC
- So với các máy công cụ điều khiển bằng tay, kết quả làm việc của may
CNC không phụ thuộc nhiều vào tay nghề thuần thục của người điền
khiển.Người điều khiển chỉ đóng vai trò theo dõi kiểm tra các chức năng hoạt
động của máy.
- So với các máy điều khiển tự động theo chương trình cứng (dùg cam,
trục gài bi…), máy CNC có tính linh hoạt cao trong công việc lập trình đặc biệt
có sự giúp đỡ của máy tính, do vậy tiết kiệm hơn về thời gian hiệu chỉnh máy
đạt được tính kinh tế cao ngay ca với sản phẩm nhỏ.
- Ưu điểm chỉ có trong máy CNC đó là phương thức làm việc với thống
thông tin xử lý” điện tử số hoá “,cho phép phối ghép các hệ thống xử lý số
trong phạm vi toàn xí nghiệp ,tạo điều kiện mở rộng tự động hoá toàn bộ quá
trình sản xuất,ứng dụng các kỹ thuật quản lý hiện đại toàn bộ quá trình sản xuất,
ứng dụng quản lý thông qua mạng LAN(mang cục bộ) hay WAN ( mạng liên
thông toàn cầu)
1.1.3. Các điểm gốc(điểm 0)
a. Điểm 0 của máy
5
Đồ án tốt nghiệp
-Các điểm 0 của máy là điểm gốc của các hệ thống toạ độ máy và do nơi
chế tạo máy đó xác định theo kết cấu động học của máy.
-Trên các máy phay ,điểm 0 của máy thường nằm tại điểm giới hạn dịch
chuyển của bàn máy.
b. Điểm 0 của chi tiết
-Điểm 0 của chi tiết là gốc của hệ thống toạ độ gắn lên chi tiết.Vị trí cua
điểm này do người lập trình lựa chọn và xác định.Song người lập trình tự cần

phải xác định sao cho các kích thước trên bản vẽ gia công trực tiếp là các giá trị
toạ độ của hệ thống toạ độ
-Nếu hệ thống toạ độ của chi tiết và hệ thống toạ độ máy khác loại thì các
toạ độ của chi tiết phải chuyển sang toạ độ của máy
c. Điểm 0 của chương trình
- Điểm 0 của chương trình là điểm mà dụng cụ sẽ ở đó trước khi gia
công.Để hợp lý ,điểm 0 của chương trình được chọn sao cho chi tiết gia công
hoặc dụng cụ có thể thay đổi một cách dễ dàng.
1.1.4. Các dạng điều khiển
a. Điều khiển theo điểm
- Điều khiển theo điểm được ứng dụng khi gia công theo các toa độ xác
định đơn giản . Dụng cụ sẽ thực hiện chạy dao nhanh đến các điểm đã được lập
trình ,trong hành trình này dao không cắt vào chi tiết.Chỉ khi đạt đến cac điẻm
đích quá trình gia công mới được thực hiện theo lượng chạy dao đã lập trình
- Tuỳ theo dạng điều khiển ,các trục có thể chuyển động kế tiếp nhau hoặc
tất cả các trục có chuyển động đồng thời song không có mối quan hệ hàm số
giữa các trục.Khi các trục có chuyển động đồng thời ,hướng của chuyển động
6
Đồ án tốt nghiệp
tạo thành góc 45 độ.Khi 1 trong 2 toạ độ đã đạt được thì trục thứ 2 sẽ được kéo
đến điểm đích.
- Điều khiển theo điểm được ứng dụng trên các máy khoan toạ độ và trên
các thiết bị hàn điểm.
b. Điều khiển theo đường
- Điều khiển theo đường tạo ra các đường chạy song song với các trục của
máy.Trong khi chạy dao gọt liên tục tạo nên bề mặt gia công.
- Trong các điều khiển đường mở rộng 2 trục của máy chuyển động với tốc
độ như nhau ,đồng thời ta có thể gia công với bề mặt côn có góc 45độ .Pham vi
ứng dụng của điều khiển đường bị thu hẹp trên máy phay và máy tiện.
c. Điều khiển theo đường viền

Bằng điều khiển theo đường viền ta có thể tạo ra các đường viền hoặc
đường thẳng tuỳ ý trong một mặt phẳng hay trong không gian.Điều này đạt
được nhờ sự chuyển động đồng thời của các bàn trượt máy theo 2 hoặc nhiều
trục vầ giũă các trục này có mối quan hệ hàm số.
Tuỳ theo số lượng các trục được điều khiển đồng thời mà điều khiển đường
viền được chia thành: Điều khiển 2D,điều khiển 2,1/2D,điều khiển 3D và điều
khiển có nhiều hơn 3trục điều khiển đồng thời.
1.2. Hệ thống đo lường trong điều khiển CNC
Mỗi trục truyền động của một máy CNC bao giờ cũng có hai thiết bị đo
lường,đó là thiết bị đo tốc độ của động cơ và thiết bị đo vị trí của dịch chuyển
7
Đồ án tốt nghiệp
1.2.1. Thiết bị đo tốc độ
Thiết bị này dùng đo tốc độ thực của động cơ và truyền tín hiệu phản hồi
tôc độ về bộ điều chỉnh tốc độ,tín hiệu này được so sánh với tốc độ đặt của
động cơ sau đó đưa về bộ điều chỉnh tốc độ.Để đo tốc độ của động cơ thông
thường người ta dùng thiết bị máy phát tốc hoăc encoder gắn trưc tiếp với trục
động cơ.
1.2.2. Thiết bị đo vị trí
Các trục của máy được trang bị thiết bị đo vị trí để xác định toạ độ của bàn
máy và dao. Khi trục máy di chuyển thì các thiết bị đo se phát ra một tín hiệu
điện ,bộ điệu khiển sẽ xử lý tín hiệu này và xác định chính xác vị trí của các
trục máy.Dữ liệu cầc xác định ở đây là đoạn đường trong các chuyển đông
thẳng và góc trong các chuyển động quay của các trục toạ độ.Tín hiệu ra của
thiết bị này được so sánh với giá trị toạ độ đặt ,sau đó được đưa vào bộ bộ điều
chỉnh vị trí.Trên các dụng cụ đo vị trí còn trang bị một vài điểm chuẩn mục đich
là để thiết lập lại gốc toạ độ của các trục mỗi khi khởi động máy.Khi khởi động
các trục ,toạ độ phải di chuyển và khi qua các điểm chuẩn nó sẽ phát ra tín hiệu
xác định toạ độ gốc của trục và hiên thị toạ độ thực
a. Phương pháp cảm biến

Đo lường vị trí được chia thành 2 loại: dịch vị thẳng và dịch vị góc.Dịch vị
thẳng được đo lường trên đơn vị chiều dài còn dịch vị góc được đo trên đơn vị
radian hay độ.
Cảm biến vị trí được sử dụng để xác định vị trí ,đo lường bề dày đường
kính của một vật,vị trí của vật đang di chuyển ,xác định sự tồn tại của một vật.
Cảm biến vị trí có một trục có quan hệ cơ khí với đối tượng đo.Để đo lường,
cảm biến dựa vào vị trí của trụ cảm biến để chuyển đổi vị trí này thành một
8
Đồ án tốt nghiệp
phẩm chất đo lường. Ví dụ : vị trí hiện tại cảu trục cảm biến có thể gây ra sự
thay đổi điện dung tụ điện ,tự cảm của cuộn dây ,hỗ cảm của hai cuộn dây gây
từ đó xác định được vị trí của đối tượng. Ngoài ra trục của cảm biến có thể ghép
với encoder một thiết bị chuyển đổi tín hiệu hiện tại thành tín hiệu số.
Đặc biệt có một số loại cảm biến không cần tiếp xúc với đối tượng đo
lường, nó sử dụng sự thay đổi hệ số hỗ cảm điện dung, điện trở để đo lường
b. Cảm biến vị trí dùng triết áp
Cảm biến chứa đựng một biến trở và một contact trượt có thể di chuyển từ
đầu này đến đầu kia của điện trở. Cảm biến triết áp đo lường cả dịch chuyển
thẳng và dịch chuyển góc.Trên hình:hai đầu dây biến trở được cung cấp một
điên áp chuẩn Es.Điện áp Eout của contact trượt có quan hệ trực tiếp với hằng số
điện áp chuẩn Es.
- Triết áp dịch vị thẳng: Eout= X*Es/L (1.1)
- Triết áp dịch vị góc : Eout=Ө*Es/ӨL (1.2)
1.2.3. Các phương pháp đo trên máy
a. Đo vị trí bằng đại lượng tương tự
Đoạn đường hay góc cần đo được dịch chuyển liên tục thành đại lượng điện
như dòng điện hay điện áp.
b. Đo vị trí bằng đại lượng số:
Đoạn đường hay góc can đo được chia thành các yếu tố đơn vị có độ lớn
như nhau .Quá trình đó là do chính sự cộng dồn các yếu tố đơn vị đã qua hoặc

nhờ sự nhận biết các dấu hiệu riêng.
c. Đo vị trí trực tiếp:
Là phương pháp đo giám sát các vị trí cần đo,hay biến đổi các vị trí không
cần đến các dẫn động cơ khí trung gian.Phương pháp này có độ chính xác khá
9
Đồ án tốt nghiệp
cao vì giữa các đại lượng cần đo và dụng cụ đo không có các lỗi cơ khí(khe hở,
các biến dạng dẻo).
d. Đo gián tiếp:
Trong phương pháp đo này thay cho các biến đổi vị trí tịnh tiến cân đo một
chuyển động quay tương ứng sẽ được đo.Chuyển động quay gắn liền với
chuyển động tịnh tiến ở đây là chuyển động quay của vít me chạy dao.Một cách
khác là chuyển đổi chuyển động chạy dao thẳng thành chuyển động quay nhờ
bộ truyền thanh răng bánh răng. Lỗi mắc phải do sai lệch bước vít me, độ ăn
khớp khi đảo chiều chiều khay khe hở ăn khớp giữa hai bánh răng trong bộ
thanh răng bánh răng được đưa trực tiếp vào lỗi của phép đo lỗi này phải nằm
trong giới hạn cho phép.
e. Phương pháp đo vị trí tuyệt đối
Trong phương pháp đo này mỗi giá trị đo đều được so sánh với điểm 0 của
thước đo và có dấu hiệu riêng với các số đo tuyệt đối ta đưa ra toạ độ các điểm
đích tính từ một điểm trong vùng làm việc tức luôn luôn so sánh với điểm 0
f. Phương pháp đo vị trí kiểu gia số:
Toàn bộ phạm vi dịch chuyển đươc chia thành các bước tăng không có dấu
hiệu riêng có độ lớn như nhau.Vị trí thật là tổng các bước đã đi qua các gia số
vượt qua phải được cộng với nhau hoặc trừ đi tuỳ theo chiều chuyển động.
Phương pháp điều khiển :độ dài 3 trục X,Y,Z hoàn toàn xác định trước 6
công tắc hành trình gắn trên 3 trục ta sẽ tính được số bước mà động cơ bước
phảo quay để cho mặt bàn máy chạy từ công tắc hành trình đầu đến công tắc
hành trình cuối ta có thể điều khiển tốc độ và độ dài của bàn máy.
Khi khoan thì trục X và truc Y sẽ dịch chuyển theo phương x và y còn

trụcZ sẽ di chuyển lên xuống theo phương thẳng đứng để xac định độ dày của
mũi khoan.Sau khi đạt được độ dày mong muốn thì trục Z sẽ đứng yên và động
10
Đồ án tốt nghiệp
cơ một chiều sẽ quay để khoan,sau khi khoan xong thì đông cơ một chiều dừng
và động cơ truc Z sẽ rút lên.
1.3. Mục tiêu của đồ án
1.3.1 Mục tiêu
Trong phạm vi của một đề tài tốt nghiệp,đề tài này xây dựng mô hình máy
CNC loại nhỏ để phục vụ cho quá trình học tập và nghiên cứu
1.3.2. Sơ đồ tổng quát của hệ thống
Hình 1.1: Sơ đồ tổng quát của hệ thống
Bộ điều khiển
Các mạch công suất
Truyền động
trục X

Truyền động
trục Z

Truyền động
trục Y

Truyền động
DC 1 chiều

Hệ đo lường
11
Đồ án tốt nghiệp
CHƯƠNG II. LỰA CHỌN CÁC THIẾT BỊ CỦA HỆ THỐNG

2.1. Lựa chọn bộ điều khiển
2.1.1. Giới thiệu một số phương án
Để giải quyết vấn đề này chúng ta co nhiều công cụ như sử dung máy
tính,PLC, vi điều khiển,máy tính –PLC,máy tính-vi điều khiển.Ở đây tôi chọn
giải pháp là máy tính-vi điều khiển vì nó có các ưu điểm như:
-Phù hợp với phạm vi của một đồ án
-Giá thành hợp lý
-Gọn nhẹ
-Khai thác được tính năng của vi xử lý và máy tính
Trong đó:
-Máy tính đóng vai trò tạo toạ độ và giao diện với người sử dụng và thực
hiện bài toán
-Vi xử lý đóng vai trò thiết bị chấp hành.
2.1.2. Giới thiệu về máy tính và khả năng ghép nối của máy tính
Trải qua thời gian dài từ phát minh đấu tiên ra máy tính cho đến nay máy
tính đang không ngừng nâng cao và phát triển qua nhiều thế hệ,các máy tính
hiện nay đều có nguồn gôc hầu hết có nguồn gốc từ họ PC (Personal
Compurter) đầu tiên là kiểu máy PCXT do hãng IBM sản xuất với bộ vi xử lý
8088 của intel.Đây là hệ thống 16bit nhưng dùng bú dữ liệu 8 bit.
Tiếp theo là máy AT ra đời với bộ vi xử lý 80286 có tính năng hơn hẳn loại
PCXT.Nó có khẳ năng tạo bộ nhớ ảo , đa nhiệm vụ ,tốc độ nhanh ,độ tin cậy
cao và dùng bus dữ liêụ 16 bit
12
Đồ án tốt nghiệp
Ngày nay các máy tính AT 386,486,pentium dùng chip CPU lần lượt là
80836,80846,P5 là kết quả của sự phát triển công nghệ.
Về khả năng ghép nối của máy tính :máy tính được trang bị thêm các điều
kiện để ghép nối với các thiết bị ngoại khác làm cho máy tính trở nên rất đa
năng.
Việc ghép nối máy tính có thể thực hiện thông qua các thanh cắm mở

rộng(Slot Card),cổng song song (cổng Print),cổng nối tiếp(Serial pord).
2.1.3. Giới thiệu về AVR ATMEGA16
AVR là họ vi điều khiển khá mới trên thị trường cũng như đối với người
sử dụng. Đây là họ vi điều khiển được chế tạo dựa trên kiến trúc RISC
(Reduced Instruction Set Computer) có cấu trúc khá phức tạp. Ngoài các tính
năng như các họ vi điểu khiển khác , AVR còn tích hợp thêm nhiều tính năng
mới rất tiện lợi cho người thiết kế và lập trình.
Sự ra đời của AVR được bắt nguồn từ nhu cầu của thực tế là hầu hết khi
cần lập trình cho vi điều khiển, chúng ta thường dùng các ngôn ngữ bậc cao
HLL (High Lever Language) để lập trình ngay cả đối với vi xử lý 8 bits, trong
đó ngôn ngữ C là ngôn ngữ phổ biến nhất. Tuy nhiên khi biên dịch thì kích
thước đoạn mã sẽ tăng lên rất nhiều so với dùng Assembly. Hãng ATMEL nhận
thấy rằng cần phải phát triển một cấu trúc đặc biệt cho ngôn ngữ C để làm giảm
thiểu sự chênh lệch kích thước mã nói trên. Và kết quả là vi điều khiển AVR ra
đời với việc làm giảm kích thước đoạn mã khi biên dịch và thêm vào đó là thực
hiện lệnh đúng hơn chu kỳ máy với 32 thanh ghi tích luỹ. Không những thế tốc
dộ xử lý của nó còn nhanh hơn các họ vi điều khiển khác từ 4 đến 12 lần. Vì thế
nghiên cứu ứng dụng AVR trong thực tế là một mảng rất thú vị và đồng thời nó
13
Đồ án tốt nghiệp
cũng giúp cho sinh viên biết thêm được một họ vi điều khiển vào loại mạnh
nhất hiện nay.
a. Đặc trưng của Chip vi điều khiển AVR.
Chip vi điều khiển AVR RISC của ATMEL có các đặc trưng sau :
+ Cấu trúc của RISC tiên tiến với hầu hết các lệnh có chiều dài cố định,
truy nhập bộ nhớ nạp lưu trữ và 32 thanh ghi đa năng.
+ Kiến trúc đường ống lệnh kiểu hai tầng cho phép làm tăng tốc độ thực
thi lệnh.
+ Có chứa nhiều bộ phận ngoại vi ngay trên Chip, bao gồm cổng I/O số,
bộ biến đổi ADC, bộ định thời, UART, bộ định thời RTC, bộ điều chế độ rộng

xung PWM Đặc điểm này là nổi bật so với các bộ vi điều khiển khác. Trên
các vi điều khiển AVR đã tích hợp sẵn :
- 48 đường dẫn vào/ra I/O lập trình được
- Hai bộ truyền nhận UART lập trình được.
- Một giao diện ISP đồng bộ.
- Một giao diện TWI đồng bộ và tương thích I2C.
- Bộ Timer/Counter 8bit.
- Một bộ Timer/Counter 16 bit với chức năng so sánh và bắt mẫu.
- Bốn lối ra điều chế độ rộng xung PWM.
- Một đồng hồ thời gian thực
- Một bộ biến đổi ADC 10 bit có đến 8 kênh lối vào.
- Một bộ phát hiện trạng thái sụt áp nguồn nuôi.
14
Đồ án tốt nghiệp
- Một bộ so sánh Analog.
- Một bộ định thời Watchdog.
+ Hầu hết các lệnh chỉ trừ các lệnh nhảy và nạp/lưu trữ đều được thực hiện
trong một chu kỳ xung nhịp.
+ Hoạt động với tốc độ đồng bộ đến 12 Mhz, có tần số xung nhịp cho phép
tương đối cao, xung nhịp do bộ tạo dao động tạo ra cũng là xung nhịp của hệ
thống, không phải qua bộ chia tần nên tốc độ xử lý tương đối cao.
+ Bộ nhớ chương trình và dữ liệu được tích hợp ngay trên Chip. Có ba
công nghệ nhớ khác nhau :
- EPROM xoá được bằng kiểu Flash
- EEPROM xoá được bằng điện.
- Bộ nhớ RAM tĩnh (SRAM) dùng cho các biến nội dung của bộ nhớ sẽ
mất khi tắt điện áp nguồn
+ Khả năng lập trình được trong hệ thống, cổng giao tiếp RS 232 và SPI
cho phép dễ dàng thực hiện các thao tác lập trình trên hệ thống.
+ Được đóng vỏ 8 chân đến 64 chân để thích ứng với nhiều loại ứng dụng

khác nhau. Loại MEGA – AVR 40 chân 2 hàng là bước đột phá chưa có đối thủ
cạnh tranh về khả năng xử lý (16 bit) và giá thành.
+ Có tốc độ xử lý lớn hơn đến 12 lần so với các vi điều khiển CISC thông
thường.
+ Hỗ trợ lập trình bằng ngôn ngữ bậc cao C.
+ Các vi điều khiển AVR đang lưu hành trên thị trường được chế tạo bằng
công nghệ CMOS 0.6
15
Đồ án tốt nghiệp
+ Điện áp làm việc cho phép thay đổi trong khoảng rộng từ 2.7 ÷ 6.0 V
+ Kiến trúc đơn giản hợp lý cho phép người dùng dễ sử dụng.
+ Tập lệnh của AVR có đến 133 lệnh cho phép lập trình dễ dàng, ngoài ra
còn cho phép lập trình bằng ngôn ngữ C.
a. Đặc tính chung của AVR Atmega 16.
16
Đồ án tốt nghiệp
Hình 2.1: Sơ đồ chân của Atmega 16
Trong phạm vi đồ án này ta sử dụng Atmega 16 dạng PIDP 40 chân, chia
làm hai hàng cắm.
17
Đồ án tốt nghiệp
Hình 2.2: Sơ đồ cấu trúc của AVR Atmega
18
Đồ án tốt nghiệp
+Được chế tạo theo kiến trúc RISC , do đó hiệu suất làm việc cao và điện
năng tiêu thụ thấp.
+ Bộ lệnh gồm 131 lệnh, hầu hết đều được thực thi chỉ trong một chu kỳ
xung nhịp.
+ 32x8 thanh ghi làm việc đa dụng.
+ 16 KB FlashROM lập trình ngay được trên hệ thống :

-Giao diện nối tiếp SPI cho phép lập trình ngay trên hệ thống.
-Cho phép 10.000 lần ghi/xoá.
+Bộ EEPROM 512 Bytes cho phép 100.000 lần ghi/xoá.
+ Bộ nhớ SRAM 1KB.
+ Bộ biến đổi ADC 8 kênh 10bit.
+ 32 ngõ I/O lập trình được
+ Bộ chuyển đổi nối tiếp đồng hồ vạn năng.
+ Vcc = 2.7V – 5.5 V.
+ Tốc độ làm việc : 0 đến 16 MHz.
+ hai bộ Timer/Counter 16 bits với chế độ so sánh, chế độ chia tần tách
biệt và chế độ bắt mẫu.
+ Bốn kênh điều chế độ rộng xung PWM.
+ Hỗ trợ bộ truyền nhận UART lập trình được.
+ Hỗ trợ giao diện truyền thông SPI chủ/tớ.
+ Bộ định thời Watchdog cho phép lập trình được và tự động reset khi treo
máy.
19
Đồ án tốt nghiệp
+ Bộ so sánh tương tự.
+ Năm chế độ ngủ: chế độ rỗi (Idle), tiết kiệm điện ( Power - Save), chế
độ Power – Down , chế độ giảm nhiễu ADC ( ADC noise reduction), chế độ
chờ ( Standby).
c. Cấu trúc thành phần của AVR Atmega 16.
* Một số thanh ghi quan trọng.
-Thanh ghi dữ liệu ( Data register).
+ Các thanh ghi dữ liệu gồm có PORTA, PORTB, PORTC, PORTD có
chức năng đọc ghi dữ liệu
+ Giá trị khởi tạo sau khi Reset là 0x00
+ Ban đầu nếu được khởi tạo là cổng ra thì khi ghi dữ liệu vào sẽ làm thay
đổi giá trị logic của các chân hay làm thay đổi chức năng của cổng.

20
Đồ án tốt nghiệp
Hinh 2.3:Các thanh ghi điều khiển
+ Các thanh ghi dữ liệu PORTA, PORTB, PORTC và PORTD đều gồm có
8 bit từ PA0÷PA7, PB0 ÷ PB7, PC0 ÷ PC7và PD0 ÷ PD7.
- Thanh ghi hướng dữ liệu ( Data direction).
+ Gồm có các thanh ghi : DDRA, DDRB, DDRC, DDRD.
+ Có chức năng xác định hướng dữ liệu truyền cho các thanh ghi PORTA,
PORTB, PORTC và PORTD. Ví dụ như thanh ghi DDRB được sử dụng để xác
định hướng truyền dữ liệu cho từng chân của PORTB. Khi ghi một giá trị “0”
(cũng là giá trị Reset) vào bit bất kỳ của thanh ghi sẽ làm cho bit đó trở thành
đầu vào ( ghi dữ liệu vào) và khi ghi giá trị “1” sẽ làm cho nó trở thành đầu ra
(đọc dữ liệu ra).
21
Đồ án tốt nghiệp
Hình 2.4: Các thanh ghi dữ liệu
- Thanh ghi UDR (USART I/O data register).
+ Thanh ghi đệm truyền nhận dữ liệu có phần giống địa chỉ I/O được xem
như thanh ghi dữ liệu USART hay UDR.
+ Khi thực hiện quá trình đọc ( nhận) dữ liệu vào thì thanh ghi truyền dữ
liệu đệm (TXB) sẽ đến ghi dữ liệu vào thanh ghi UDR. Còn khi truyền, thanh
ghi UDR sẽ quay trở lại chứa giá trị của thanh ghi nhận dữ liệu đệm (RXB)
22
Đồ án tốt nghiệp
Hình 2.5: Thanh ghi UDR
+ Sự truyền bộ đệm chỉ đươc ghi khi cờ UDRE trong thanh ghi UCSRA
được set. Dữ liệu ghi đến UDR khi cờ UDRE không được kích sẽ đồng ý truyển
bởi USART. Khi dữ liệu được ghi vào truyền đệm và thông tin được kích hoạt,
thông tin sẽ tải dữ liệu vào thanh ghi truyền vị trí khi thanh ghi vị trí rống. Sau
đó dữ liệu sẽ truyền ra từng chu kỳ trên chân TXD.

-Thanh ghi UCSRA (USART Control and Status Register A).
Hình 2.6: Thanh ghi UCSRA
+ Bit 7-RXC : USART nhận thành công
Bit cờ sẽ được đặt khi có dữ liệu chưa đọc trong vùng nhận đệm và bị xoá
sạch khi vùng nhận đệm rỗng. Nếu vùng nhận không được kích hoạt vùng nhận
đệm sẽ bị kích hoạt vì vậy bit RXC sẽ có giá trị 0.
+ Bit 6-TXD : USART truyền thành công.
23
Đồ án tốt nghiệp
Bit cờ sẽ được đặt khi toàn bộ khung trong thanh ghi vị trí truyền toàn bộ ra
ngoài và không có dữ liệu mới trong khi bộ đệm truyền (UDR). Cờ TXC có thể
phát truyền ngắt thành công.
+ Bit 5-UDRE : USART thanh ghi dữ liệu rỗng.
UDR đã sẵn sàng để nhận một byte mới.
+ Bit 4- FE : Frame Error
Bit sẽ set nếu một ký tự tiếp theo trong nhận đệm có một khung lỗi khi
nhận. Luôn để bit này ở mức 0 khi ghi vào thanh ghi UCSRA
+ Bit 3- DOR : Data Over Rung
Bit này sẽ được set khi phát hiện dữ liệu tràn. Dữ liệu tràn được tìm thấy
khi vùng nhận đệm đầy. Luôn để bit này ở mức 0 khi ghi vào thanh ghi
UCSRA.
+ Bit 2-PE : Party Error
Bit này sẽ được set nếu ký tự tiếp theo trong vùng đệm có lỗi chẵn lẻ.Luôn
để mức 0 khi ghi vào thanh ghi UCSRA
+ Bit 1-U2X : Tốc độ truyền USART gấp đôi.Để mức 0 khi có sự hoạt
động của xung đồng bộ.
+ Bit 0-MPCM : Kiểu xử lý truyền thông.
-Thanh ghi UCSRB (USART Control and Status Register B).
24
Đồ án tốt nghiệp

Hình 2.7: Thanh ghi UCSRB
+ Bit 7-RXCIE : RX cho phép ngắt thành công
+ Bit 6-TXCIE : TX cho phép ngắt thành công
+ Bit 5-UDRIE : Cho phép thanh ghi dữ liệu USART ngắt rỗng
+ Bit 4-RXEN : Cho phép nhận
+ Bit 3-TXEN : Cho phép gửi.
+ Bit 2-UCSZ2 : Cỡ ký tự.
+ Bit 1-RXB8 : Nhận bít 8 dữ liệu
+ Bit 0-TXB8 : Truyền bit 8 dữ liệu.
- Thanh ghi UCSRC (USART Control and Status Register C).
Hình 2.8: Thanh ghi UCSRA
+Bit7-URSEL : Lựa chọn thanh ghi
+Bit7-URSEL : Lựa chọn kiểu USART
+Bit 5:4-UMP1:0 : Kiểu chẵn lẻ
+Bit 3 – USBS : Lựa chọn dừng bit
25

×