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

Đồ án tốt nghiệp- thiết kế bộ điều khiển tự động cho robot tự hành

95 1,1K 4

Đ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 95
Dung lượng 1,58 MB

Nội dung

Đồ án tốt nghiệp- thiết kế bộ điều khiển tự động cho robot tự hành

Trang 1

Mục lục

Mục lục 1

Lời Cảm Ơn 2

Lời nói đầu 3

Phần I Phân tích cấu trúc tổng quát của Robot tự hành 5

1 Hệ Quang học 5

1.1 Vai trò, nhiệm vụ của hệ quang học 5

1.2 Cấu trúc cơ bản của hệ quang học 5

2 Hệ chuyển động 5

2.1 Vai trò, nhiệm vụ của hệ chuyển động 5

2.2 Cấu trúc cơ bản của hệ chuyển động 6

3 Hệ điều khiển 7

3.1 Vai trò, nhiệm vụ của hệ điều khiển 7

3.2 Cấu trúc cơ bản của hệ điều khiển 7

Phần II Phân tích các mô hình điều khiển và các phơng pháp điều khiển thông dụng 9

1 Định nghĩa bài toán lái tự động: 9

2 Mô hình tính năng hệ điều khiển lái tự động cho Robot tự hành 9

3 Các mô hình điều khiển bám vạch thông dụng 10

3.1 Mô hình điều khiển không có phản hồi 10

3.2 Mô hình điều khiển có phản hồi 12

3.3 Kết luận: 13

Phần III Thiết kế bộ điều khiển chuyển động cho robot tự hành 14

1 Bài toán điều chế công suất: 14

1.1 Mạch động lực 14

1.2 Điều chế PWM 18

1.3 Bộ cách ly 20

2 ổn định vận tốc: 20

2.1 Các phơng pháp điều khiển thông dụng : 20

2.2 Tìm hiểu về phơng pháp điều khiển fuzzy: 22

2.3 Thiết kế chi tiết khối ổn định vận tốc 25

3 Bộ xử lý trung tâm 31

3.1 Khảo sát họ vi điều khiển 8051 31

3.2 Ghép nối thu thập số liệu từ hệ điều khiển 54

1 SM0 SCON.7 Số xác định chế độ làm việc cổng nối tiếp 73

2 SM1 SCON.6 Số xác định chế độ làm việc cổng nối tiếp 73

Trang 2

4 Tổng hợp bộ điều khiển 74

4.1 Phần cứng 74

4.2 Phần mềm 75

4.3 ổn định vngang: 83

Kết Luận 94

Tài liệu tham khảo 95

Lời Cảm Ơn

Em xin chân thành gửi lời cảm ơn tới tất cả các thầy cô trong bộ môn Trang thiết bị Điện - Điện Tử trong công nghiệp và giao thông vận tải cùng các thầy cô trong khoa Điện - Điện tử đã tận tình dạy dỗ em những kiến thức chuyên môn làm cơ sở để em hoàn thành tốt đề tài tốt nghiệp và đã tạo điều kiện thuận lợi cho em hoàn tất khóa học

Đặc biệt em xin gửi lời cảm ơn tới TS Nguyễn Văn Nghĩa, ngời đã gợi ý,

đã tạo mọi điều kiện và nhiệt tình giúp đỡ em hoàn thành đề tài này

Con xin chân thành cảm ơn Bố Mẹ, gia đình, bạn bè đã động viên và tạo mọi điều kiện giúp con học tập tốt

Đồng thời em xin gửi lời cảm ơn tới tất cả các bạn sinh viên đã đóng góp những ý kiến quý báu giúp em hoàn thành đề tài tốt nghiệp đúng thời gian

Em xin chân thành cảm ơn

Sinh viên thực hiện

Lu Xuân Công

Trang 3

Lời nói đầu

“ROBOCON” là cuộc thi trí tuệ và sáng tạo đợc phát động hàng năm dohiệp hội ROBOT Châu á Thái Bình Dơng tổ chức Cuộc thi này đã thu hút đ-

ợc rất nhiều sự quan tâm của các bạn sinh viên ở các nớc Châu á Đặc biệt làcác bạn sinh viên nớc ta Là một cầu nối Đài truyền hình Việt Nam đã phát

động cuộc thi này hàng năm nhằm khuyến khích các bạn sinh viên Việt Namtham gia nghiên cứu khoa học, chế tạo Robot, thể hiện óc sáng tạo của sinhviên Việt Nam để chọn ra một đội vô địch trong nớc đi tham gia thi đấu, giao

lu với các nớc trong khu vực Châu á Thái Bình Dơng

Tổng quát các Robot tự động phải thực hiện các bài toán cơ bản sau:

• Bài toán định vị: Dựa trên lới vạch trắng trên sân, xác định vị tríhiện tại của rôbốt

• Bài toán di chuyển: Bám theo vạch trắng để dịch chuyển tới vịtrí cần tiếp cận

• Bài toán tiếp cận mục tiêu: Thực hiện thao tác ghi điểm

Việc giải quyết tốt bài toán di chuyển sẽ cho phép rôbốt đi trên lới tọa độ vớitốc độ cao, tin cậy, chính xác Chính vì vậy, đợc sự đồng ý của Thầy giáo hớngdẫn và Bộ môn, em đã thực hiện đề tài tốt nghiệp với nội dung: “Thiết kế bộ

điều khiển chuyển động theo quỹ đạo cho rôbốt tự hành“

Nội dung cơ bản của đề tài gồm các phần sau:

• Mô hình điều khiển không có phản hồi

• Mô hình điều khiển có phản hồi

 Thiết kế bộ điều khiển chuyển động cho Robot tự hành

• Thiết kế tính năng

Trang 4

• Phân chia phần cứng, phần mềm và thiết kế chi tiết từng khối

• Tổng hợp bộ điều khiển

 Phân tích và đánh giá chất lợng của bộ điều khiển bằng máy tính

Do hạn chế về thời gian và kinh nghiệm nên bản đồ án này khó tránhkhỏi những khiếm khuyết Em rất mong đợc sự đóng góp của các quý thầy cô

để đề tài này đợc hoàn thiện hơn

Trang 5

Phần I

Phân tích cấu trúc tổng quát của Robot tự hành

Về cấu trúc, có thể phân chia robot tự hành thành các khối cơ bản sau:

- Hệ quang học

- Hệ chuyển động

- Hệ điều khiển

1 Hệ Quang học

1.1 Vai trò, nhiệm vụ của hệ quang học

Hệ quang học đợc ví nh “mắt” của Robot tự hành Nhiệm vụ của nó làgiúp cho Robot tự hành dò đờng và tìm đờng đi trên lới tọa độ Mặt khác nócòn phải xác định góc lệch hiện tại của Robot, vị trí lệch của Robot so với quỹ

đạo chuyển động đã định sẵn của Robot

1.2 Cấu trúc cơ bản của hệ quang học

Hệ quang học đợc cấu tạo từ rất nhiều các cặp mắt thu - phát khác nhau.Thờng thì mỗi một Robot tự hành đợc trang bị từ 7 – 12 cặp mắt thu - pháttùy thuộc vào chiều rộng của xe nhng số cặp mắt thu – phát càng nhiều thìthông tin từ hệ quang học càng nhiều và độ tin cậy của hệ quang học càng lớn.Các cặp mắt thu – phát thờng là các cặp thu – phát hồng ngoại hoặccác loại điện trở quang có độ nhậy với ánh sáng cao

2 Hệ chuyển động

2.1 Vai trò, nhiệm vụ của hệ chuyển động

Hệ chuyển động đợc ví nh “đôi chân” của Robot tự hành.nhiệm vụ của

nó là giúp cho Robot tự hành chuyển động tới mọi vị trí trên lới tọa độ Đểlàm đợc điều này hệ chuyển động phải đạt đợc những yêu cầu tốc độ, gia tốc,

Trang 6

đến vị trí kia trên lới tọa độ là nhanh nhất, ổn định nhất và mômen chuyển

động luôn luôn phải đủ lớn để có thể thắng đợc mọi vật cản trên sân

2.2 Cấu trúc cơ bản của hệ chuyển động

Hệ chuyển động thờng đợc cấu tạo từ các động cơ một chiều kích từ độclập công suất nhỏ từ 12 – 24 [W] hoặc là các động cơ bớc nhng trên thực tế

động cơ bớc ít đợc dùng do khó điều khiển, giá thành cao và công suất quánhỏ Cấu trúc của hệ chuyển động thờng bao gồm 2 bánh chủ động và mộtbánh bị động 2 bánh chủ động vừa có tác dụng cung cấp mômen chuyển độngcho xe vừa có tác dụng làm bánh lái Bánh bị động chỉ có tác dụng dẫn hớng

và giúp xe cân bằng

2.2.1 Hệ chuyển động điều khiển ON/OFF và đảo chiều bằng rơle

Hệ chuyển động này là cấu trúc đơn giản nhất Nó chỉ gồm 1 rơle dùng

để đảo chiều động cơ và 1 rơle dùng để đống, cắt động cơ với nguồn điện

Hệ này có u điểm là không phải tiêu tốn công suất tổn hao do dùng rơlenhng nhợc điểm của nó là chỉ có thể đóng cắt và đảo chiều động cơ với tần sốrất thấp nên chất lợng ổn định của nó không cao

Hệ này chỉ thích hợp cho các Robot điều khiển bằng tay

Trang 7

2.2.2 Hệ chuyển động điều khiển bằng PWM và đảo chiều bằng rơle

Hệ này sử dụng 1 phần tử bán dẫn công suất để điều chỉnh điện áp cungcấp cho động cơ bằng phơng pháp điều chế độ rộng xung nên hệ này khắcphục đợc nhợc điểm của hệ điều khiển ON/OFF là tần số đóng cắt của nó đợcnâng lên rất cao nhng nó phải chịu thêm nhợc điểm là bị tiêu tốn công suấttrên phần tử bán dẫn công suất

2.2.3 Hệ điều khiển chuyển động bằng PWM và đảo chiều bằng cầu

H là các phần tử bán dẫn công suất

Hệ này sử dụng 2 phần tử bán dẫn công suất kênh N và 2 phần tử bán dẫncông suất kênh P để tạo nên một cầu H

u điểm nổi bật của hệ này tần số đảo chiều rất cao rất thích hợp cho các

hệ thống điều khiển có chiều cần độ đáp ứng điều khiển nhanh

Nhợc điểm chính của hệ này là do dùng 4 phần tử bán dẫn công suất nêntiêu tốn công suất trên chúng tơng đối lớn Nhợc điểm thứ hai là các phần tửbán dẫn thờng có một thời gian quá độ (thời gian trễ) giữa các lần đóng và mởdẫn đến khi tần số đảo chiều quá cao sẽ dẫn đến hiện tợng trùng dẫn trongmột thời gian rất ngắn Nếu nh thời gian này kéo dài và lặp lại liên tục sẽ làmcho các phần tử bán dẫn bị cháy

3 Hệ điều khiển

3.1 Vai trò, nhiệm vụ của hệ điều khiển

Hệ điều khiển đợc ví nh “bộ não” của Robot tự hành Nhiệm vụ của nó làtổng hợp các thông tin từ hệ quang học và hệ chuyển động để đa ra các lệnh

điều khiển ngợc trở lại hệ chuyển động giúp cho Robot thực hiện các nhiệm

vụ hay các chức năng của nó nh di chuyển đến đích, tiếp cận mục tiêu

3.2 Cấu trúc cơ bản của hệ điều khiển

Hệ điều khiển đợc cấu tạo bởi các bộ vi xử lý cỡ nhỏ có thể lập trình đợc.Phổ biến và dễ ứng dụng nhất là họ vi điều khiển 8051 Họ vi điều khiển nàycũng có rất nhiều loại nh 89C51, 89C52, 89C2051 và tùy thuộc vào yêucầu của hệ thống điều khiển về tốc độ xử lý, số lợng các đầu IN/OUT và dunglợng bộ nhớ chơng trình mà sử dụng chúng sao cho thích hợp mà tiết kiệm đợctối đa giá thành sản phẩm

Từ những phân tích trên ta có thể đa ra sơ đồ khối cấu trúc tổng quát củaRobot tự hành nh sau:

Trang 8

Bộ điều khiển Bộ chuyển động

Bộ phản hồi vận tốcThông tin từ

bộ quang học

Trang 9

Phần II Phân tích các mô hình điều khiển

và các phơng pháp điều khiển thông dụng

1 Định nghĩa bài toán lái tự động:

Bài toán lái tự động là một trong những bài toán cơ bản trong điều khiển Robot tự hành Lái tự động có nghĩa là Robot tự hành phải tự biết tìm đờng đi theo một quỹ đạo đã đợc vạch định sẵn Chúng phải dựa vào các thông tin của “mắt” và

“chân” để biết đợc vị trí hiện tại của xe, vận tốc của xe, độ lệch và góc lệch của xe

so với quỹ đạo chuyển động cho trớc.

Mô hình chuyển động của một Robot tự hành:

2 Mô hình tính năng hệ điều khiển lái tự động cho Robot tự hành

Bài toán gồm 3 phân cơ bản:

1 Sensor quang nhận tín hiệu quang; từ đó phát hiện ra độ lệch của xe sovới vạch dẫn hớng

Vận tốc xeGóc lệch xe

độ lệch xe

Vạch dẫn h ớng chuyển động

Bắt đầuKiểm soát vạch dọc

Thuật toánbám vạch

Điều chỉnh vi sai vận tốcKết thúc

Trang 10

2 Bộ điều khiển, trên cơ sở trạng thái hiện tại của xe, sẽ ra lệnh điềuchỉnh để lái xe trở về vạch dọc.

3 Trên cơ sở yêu cầu về độ lệch, các khối điều khiển động cơ sẽ tạo ra vậntốc vi sai 2 bánh để tạo ra quỹ đạo hợp lý cho xe

Tuy nhiên, tùy theo cách thiết kế mà ngời ta có 2 phơng pháp điều khiển –bám vạch sau:

3.Các mô hình điều khiển bám vạch thông dụng

3.1 Mô hình điều khiển không có phản hồi

Trong mô hình này, các cảm biến quang sẽ phát hiện đợc độ lệch của xe,trên cơ sở đó trực tiếp điều khiển mômen hai bánh xe: Độ lệch xe càng nhiều -

độ chênh PWM giữa 2 bánh càng lớn để điều khiển xe về trạng thái cân bằng

ý nghĩa và nhiệm vụ của các khối chức năng:

- Bộ tính độ lệch mômen 2 bánh: Có nhiệm vụ nhận thông tin từ mắt vàkiểm tra vị trí và độ lệch hiện tại của xe từ đó tính toán ra độ lệch mômen 2bánh

- Bộ điều chế độ rộng xung: Có nhiệm vụ nhận giá trị điều khiển từ bộ xử

Cách ly

Trang 11

+ Từ sơ đồ trên ta thấy mô hình điều khiển không có phản hồi là mô hình đơngiản nhất Mô hình này có u điểm là dễ làm cả về phần cứng và phần mềm + Nhợc điểm của mô hình này là chất lợng điều khiển thấp: Do giá trị đầu vàocủa vòng phản hồi là độ lệch xe nên khi xe lệch ít, độ điều chỉnh công suất làrất ít.

+ Tốc độ điều chỉnh thấp: chỉ khi nào sensor quang phát hiện đợc sai lệch thìmới tạo ra độ lệch PWM

+ Khi gặp vật cản, một bánh bị dừng hẳn lại thì giá trị PWM cũng chỉ tăng lênkhi xe bị xoay đáng kể - nhng khi đó độ lệch của xe rất lớn và hệ quang đãkhông thể kiểm soát đợc trạng thái xe

+ Trong điều khiển không xét đến quán tính xe, do vậy, khi xe chuyển độngvới vận tốc cao, dễ dàng bị hất khỏi quỹ đạo

+ Phụ thuộc nhiều vào mặt sân, điều kiện thi đấu, do vậy, độ ổn định xe khôngcao: Với các mặt sân khác nhau, lợng điều chỉnh cần khác nhau, ngời thiết kếphải tính toán lại độ nhạy điểu chỉnh Muốn có đợc chất lợng điều khiển tơng

đối để có thể sử dụng đợc thì ngời điều khiển phải thử nghiệm rất nhiều để có

đợc giá trị điều khiển thích hợp và mỗi khi có sự thay đổi nào đó của Robot

nh khối lợng, trọng tâm xe thì ngời điều khiển lại phải bắt đầu lại quá trình thửnghiệm từ đầu

Trang 12

3.2 Mô hình điều khiển có phản hồi

- Trong mô hình này, mỗi động cơ có mạch vòng ổn định tốc độ riêng, mạchvòng này sẽ giám sát vận tốc mỗi bánh xe, từ đó khống chế giá trị PWM mỗibánh để đảm bảo vận tốc của bánh xe đạt gần nhất với vận tốc đặt

- Sensor quang sẽ kiểm soát đợc độ lệch của xe Trên cơ sở những thông tin

về chuyển động xe và độ lệch xe, bộ điều khiển sẽ quyết định độ chênh lệchvận tốc hai bánh để giảm dần độ lệch xe

Thông tin từ

hệ quang học

Tính độ lệch vận tốc 2 bánh

Bộ phản hồi tốc độ

Bộ phản hồi tốc độ

Bộ điều chế

độ rộng xung

Bộ điều khiển vận tốc 2 bánh

Trang 13

khả năng điều chỉnh momen ngay khi gặp chớng ngại vật làm giảm vận tốccủa xe – tức là trớc khi xe bị lệch đờng.

+ Cho phép tạo mômen lớn trên trục động cơ : Khi gặp chớng ngại vật, vận tốccủa xe giảm, do có vòng phản hồi, momen trên trục động cơ đợc tăng tối đa đểthắng vật cản Trong mô hình không có phản hồi, chỉ khi nào độ lệch của xe

đạt giá trị mà sensor quang phát hiện đợc thì mới tăng – giảm mômen độngcơ ; và khi xe đạt độ lệch rất lớn thì mômen trên trục mới đạt giá trị tốt đa.+ Nhợc điểm: Độ phức tạp cao, cần nhiều đầu vào/ra

+ Động cơ phải sử dụng loại có ECD

Trên thực tế chạy thử không cần tín hiệu của mắt và chọn mặt phẳng có ma sátbất kì thì khi chạy thẳng 2 m sai lệch quãng đờng của xe nhiều nhất là 20 cm

3.3 Kết luận:

Do những u điểm của hệ thống điều khiển có phản hồi vận tốc, nên em đãchọn phơng pháp điều khiển này

Với phơng pháp điều khiển này, cần thực hiện các bài toán sau:

- Bài toán bám vạch : Trên cơ sở vị trí vạch dọc mà sensor quang đa lại, tính

ra độ lệch vận tốc giữa 2 bánh xe của robot

- Bài toán ổn định vận tốc: Trên cơ sở thông tin phản hồi vận tốc từ ECD,

điều chỉnh công suất động cơ để ổn định vận tốc của mỗi bánh

- Bài toán điều chế PWM: Thực hiện bài toán điều chế công suất 2 bánh xetheo yêu cầu điều khiển

Phần tiếp theo em sẽ phân tích và thiết kế 3 bài toán trên:

Trang 14

Phần III Thiết kế bộ điều khiển chuyển động cho robot tự hành

1 Bài toán điều chế công suất:

1.1 Mạch động lực

Mạch động lực đợc thiết kế hoàn toàn bằng phần cứng

Có rất nhiều phơng pháp thiết kế phần cứng cho mạch động lực và tùyvào yêu cầu của hệ thống nh dòng, tải, phơng pháp điều khiển, độ quá độ vàkhả năng đáp ứng của mạch mà chọn phần cứng cho thích hợp

Các yêu cầu cơ bản:

+ Cấp nguồn cho động cơ

+ Điều chế công suất

+ Đảo chiều động cơ

1.1.1 Mạch động lực sử dụng 2 nguồn điện một chiều độc lập.

Khi muốn động cơ quay theo chiều thuận thì ta bật công tắc nguồn SW1

và tắt công tắc nguồn SW2 khi muốn động cơ quay theo chiều ngợc lại thì talàm ngợc lại là tắt công tắc nguồn SW1 và bật công tắc nguồn SW2

Phơng pháp đảo chiều này ít đợc sử dụng vì nó phải sử dụng 2 nguồn

điện độc lập nhau

Trang 15

1.1.2 Mạch động lực sử dụng cầu H

Muốn động cơ quay theo chiều thuận thì ta bật công tắc 1 và 3, tắt côngtắc 2 và 4 Muốn động cơ quay theo chiều ngợc lại thì ta tắt công tắc 1 và 3,bật công tắc 2 và 4

Tiếp điểm của công tắc có thể là công tắc cơ khí, rơ le hoặc 2 cực củalinh kiện đóng/ ngắt công suất (transitor lỡng cực, transitor trờng, IGBT…) tùytheo dải dòng, áp cần sử dụng

Ưu điểm: Việc sử dụng cầu H làm cho mạch trở nên rất đơn giản và chỉcần 1 nguồn điện

Nhợc điểm: Nếu nh mạch điều khiển cùng bật công tắc 1 và 2 hoặc 3 và

4 thì sẽ làm cho mạch động lực bị ngắn mạch nguồn Nếu hiện tợng xảy ratrong thời gian ngắn (quá độ), sẽ xuất hiện dòng trùng dẫn qua van công suấtlàm tăng công suất tiêu tán trên van Nếu thời gian trùng dẫn đủ dài, dòngtrùng dẫn tăng lớn sẽ làm cháy van công suất

1.1.2.1 Sử dụng cầu H bằng rơle

Điều khiển đảo chiều động cơ dùng 1 transistor mosfet và role một chiều

4 tiếp điểm (2 tiếp điểm thờng đóng và 2 tiếp điểm thờng mở)

Trang 16

Phơng pháp đảo chiều dùng role có u điểm là mạch đơn giản và không

bị hiện tợng ngắn mạch nguồn vì cặp tiếp điểm 1 và 2, 3 và 4 chỉ luông luôn

có một tiếp điểm đợc bật Nhợc điểm của mạch đảo chiều sử dụng role là tần

số đảo chiều thấp

1.1.2.2 Điều khiển và đảo chiều động cơ điện một chiều dùng L298.

Vi mạch L298 là một bộ điều khiển cầu kép (dual full-bridge) dùng để

điều khiển một động cơ bớc hoặc hai động cơ một chiều Nó có thể sử dụngvới điện áp nguồn nuôi đến 48V và dòng điện một chiều cho mỗi cầu là 2Atổng cộng cả hai cầu là 4A

Hình dáng bên ngoài của vi mạch L298

Trang 17

Các thông số cơ bản của L298

Sử dụng L298 để điều khiển độc lập 2 động cơ 1 chiều

Trang 18

Vi mạch L298 có công suất rất nhỏ vì vậy khi điều khiển các Motor , thì điềucần chú ý là phải tăng tốc độ của các Motor một cách từ từ , chứ không đợccho các Motor hoạt động ngay ở tốc độ định mức Bởi vì dòng khởi độngMotor 1 chiều rất lớn(gấp 5 đến 7 lần dòng định mức) sẽ làm hỏng vi mạchL298 Vì vậy Motor cần đợc khởi động chậm ở tốc độ cực tiểu sau đó dần dần, tốc độ đợc tăng cho đến khi đạt đến tốc độ cực đại có thể Để chuyển Motorsang trạng thái dừng , tốc độ đợc giảm từ từ trớc khi dừng hẳn

1.1.2.3 Điều khiển và đảo chiều động cơ điện một chiều dùng cầu H sử dụng transistor Mosfet:

Để tạo thành một cầu H cần sử dụng 2 transistor mosfet kênh P và 2transistor mosfet kênh N Sơ đồ mạch

1.2 Điều chế PWM

Phơng pháp điều chế độ rộng xung là phơng pháp cơ bản chuyên dùng để

điều khiển các phần tử công suất có đờng đặc tính là tuyến tính khi có sẵnnguồn một chiều cố định

Trang 19

Phơng pháp điều chế độ rộng xung thực chất là phơng pháp điều chỉnh

điều chỉnh điện áp ra tải Phơng pháp này thực hiện theo nguyên tắc đóng ngắtnguồn với tải một cách chu kỳ theo luật điều chỉnh thời gian đóng ngắt Phần

tử thực hiện nhiệm vụ đó trong mạch là các van bán dẫn

Ta xét sơ đồ nguyên lý một bộ biến đổi điện áp một chiều thông dụng:

Trong khoảng thời gian 0 – t0 ta cho van G mở toàn bộ điện áp nguồn

Ud đợc đa ra tải Còn khoảng thời gian t0 – T cho van G khóa, cắt nguồn khỏitải Vì vậy với t0 thay đổi từ 0 – T ta sẽ cung cấp toàn bộ, một phần hay khóahoàn toàn điện áp cung cấp cho tải

Nguyên tắc tạo PWM cần 2 nguồn tín hiệu:

- Tín hiệu răng ca: Xác định tần số của PWM

- Tín hiệu tựa: Xác định mức công suất cần điều chế

Hai tín hiệu so sánh với nhau để tạo ra xung PWM

Trang 20

Phần mềm: Các khối đợc tạo thành trên cơ sở phần mềm, dựa trên nhịp clockcủa CPU

Trong thiết kế, PWM đợc tạo bằng phần mềm trong 1 CPU riêng

1.3 Bộ cách ly

Để đảm bảo an toàn cho mạch điều khiển, tránh các can nhiễu từ khốicông suất sang khối điều khiển, cần phải cách ly hoàn toàn về điện giữa haikhối này

Bộ cách ly đợc thực hiện hoàn toàn bằng phần cứng nhờ sử dụngOptocoupler 4N35

Các thông số kỹ thuật của Optocoupler 4N35:

2 ổn định vận tốc:

2.1 Các phơng pháp điều khiển thông dụng :

2.1.1 Điều khiển ON/OFF

Đây là phơng pháp điều khiển đơn giản nhất nên có chất lợng điềukhiển rất thấp Khi vận tốc của bánh xe nhỏ hơn vận tốc đặt thì ngời ta bậtcông tắc nguồn cấp năng lợng với mức cực đại cho động cơ, và khi vận tốcbánh xe lớn hơn vận tốc đặt thì động cơ bị ngắt nguồn hoàn toàn Vận tốc đặt

và vận tốc phản hồi đợc tính toán không trùng khớp để tránh thao tác đóng cắt

Trang 21

quá nhiều lần có thể gây ra mất ổn định hệ thống vì vậy mà chất lợng điềuchỉnh của phơng pháp này là rất thấp do sai số giữa vận tốc đặt và vận tốcphản hồi và do mỗi lần đóng cắt thì xe sẽ bị giật Mô hình điều khiển này th-ờng đợc dùng cho các Robot bằng tay

2.1.2 Điều khiển tỷ lệ P

Là phơng pháp nhằm cải thiện việc thực hiện điều khiển ON/OFF tốthơn bằng cách cấp nguồn có giá trị số tỷ lệ với sai lệch giữa vận tốc đặt và vậntốc thực của bánh xe

VĐK = P(VThực –VĐặt)

P: Hệ số tỷ lệ

Phơng pháp này cho phép thay đổi một cách nhanh chóng vận tốc đạttới giá trị đặt nhng mặt khác nó lại gây ra quá điều chỉnh, kéo dài quá trìnhquá độ, thậm chí gây mất ổn định hệ thống đặc biệt là khi hệ số tỷ lệ là lớn

2.1.3 Điều khiển tỷ lệ - đạo hàm PD:

Vấn đề ổn định và quá điều chỉnh của bộ điều chỉnh tỷ lệ có thể đợckhắc phục bằng cách thêm vào bộ điều chỉnh một thành phần tỷ lệ với đạohàm của sai lệch theo thời gian:

Phơng pháp này gọi là điều chỉnh theo luật PD, giá trị của hệ số đạohàm hay còn gọi là hằng số tắt dần D có thể đợc điều chỉnh để sao cho số lầndao động của giá trị thực quanh giá trị đặt là nhỏ nhất

2.1.4 Điều khiển PID:

Mặc dù điều khiển theo luật PD giải quyết tốt vấn đề quá điều chỉnh vàdao động nhng còn một vấn đề tồn tại là sai lệch tĩnh của quá điều chỉnh Để

có đợc một đáp ứng quá độ tốt, một thành phần có hành vi tích phân đợc đavào hàm truyền bộ điều chỉnh để làm triệt tiêu sai lệch tĩnh

Khi đó biến điều khiển có dạng:

V P

V DK ( Thuc Do) ( Thuc Do) ( Thuc Do)I: Hệ số tích phân hay còn gọi là mức độ lặp lại của bộ điều chỉnh PID.Thành phần tích phân có tác dụng thay đổi giá trị điều khiển cho đến

Trang 22

ơng pháp điều khiển tốt song khá phức tạp về mặt toán học lúc này hàmtruyền bộ điều chỉnh là bậc 3.

2.1.5 Luật điều khiển PI:

Biến điều khiển có dạng:

V DK =P[(V ThucV Do) +I∫(V ThucV Do)dt]

Đôi khi, đặc biệt là trong các hệ thống có các thiết bị đo lờng nhạy cảmvới các dao động điện và nhiễu, hành vi tích phân của bộ điều chỉnh tác độngvào sai lệch có thể làm cho biến điều khiển dao động một lợng lớn, điều nàygây ra tác động ngợc lại, hệ trở nên mất ổn định hơn và sai lệch hơn Trongnhững trờng hợp này thì nên sử dụng bộ điều chỉnh PI hoặc PID nhng với hệ

số D bằng 0

2.1.6 Điều khiển bằng ứng dụng kĩ thuật NeuroFuzzy

Ta sẽ thiết kế một hệ điều khiển chuyển động cho Robot tự hành dựa trên nền tảng NeuroFuzzy Cần nhấn mạng rằng trong NeuroFuzzy thì phần Fuzzy đóng vai trò chính, chịu trách nhiệm điều khiển đối tợng Còn mạng Neuron đóng vai trò bổ sung, đa tri thức vào hệ bằng cách học những hành vi thông qua tập dữ liệu gồm những cặp vào-ra mong muốn.

Nh vậy bớc đầu tiên là thiết kế một hệ mờ sơ khởi Sau đó cho hệ hoạt động để rút ra những sửa đổi cần thiết và ép hệ học những sửa đổi đó.

2.2 Tìm hiểu về phơng pháp điều khiển fuzzy:

2.2.1 Thiết kế hệ mờ

2.2.1.1 Các nguyên tắc trong thiết kế

Mặc dù hệ mờ chúng ta thiết kế ở đây là hệ sơ khởi, tức là hệ thô Mọi quá trình tối u để hệ đạt đến trạng thái hoàn chỉnh đều đợc thực hiện sau đó Tuy nhiên,

để cho việc học đợc dễ dàng thì ta cần thiết kế một hệ tơng đối phù hợp với đối tợng dựa trên các nguyên tắc thiết kế cần thiết.

Thiết kế hệ mờ đợc bắt đầu bằng việc xác định các biến ngôn ngữ dùng trong hệ thống Các biến này đợc xem nh là nền tảng cho các luật hoạt động Kế đến là thiết

kế cấu trúc của hệ, mang thông tin về dòng điều khiển bên trong hệ, nh là tập mờ nào kết hợp với tập mờ nào, đa ra tập mờ nào … Thiết kế hệ luật đợc xem nh là phần thiết kế chính yếu, thể hiện tri thức của con ngời về đối tợng đang điều khiển Cuối cùng là lựa chọn phơng pháp giải mờ thích hợp.

2.2.1.2 Xác định biến ngôn ngữ

Giá trị của biến ngôn ngữ là những từ ngữ thể hiện đặc điểm của biến đó Ví

nh trong điều khiển vận tốc của xe: đối với biến sai lệch vận tốc (sai lệch vận tốc =

Trang 23

vận tốc đặt – vân tốc đo), ta có thể có các từ ngữ (tức các giá trị) nh âm nhiều, âm

ít, dơng nhiều, dơng ít.…

Có bao nhiêu giá trị ngôn ngữ cho một biến ngôn ngữ ?

Hầu hết các ứng dụng trong thực tế đều thiết kế từ 3 đến 7 giá trị cho một biến ngôn ngữ Hiếm khi gặp trờng hợp ít hơn 3 giá trị, bởi vì nội trong khái niệm của con ngời cũng đã là hai cực hai bên và một trung tâm giữa hai cực đó Cũng ít khi gặp trờng hợp nhiều hơn 7 giá trị do các đặc điểm mà con ngời xử lý đợc tại một thời điểm không lớn hơn 7.

Một đặc điểm nữa là số giá trị cho một biến ngôn ngữ thờng là số lẻ, do ngời ta ờng thiết kế dạng đối xứng : tạo ra các giá trị hai bên rồi đến một giá trị trung tâm.

th-Do đó, một biến ngôn ngữ thờng có 3, 5, hoặc 7 giá trị.

Để xác định là 3, 5, hay 7 giá trị Ta viết ra một số luật mờ tiêu biểu và dựa trên các luật đó, ta sẽ xét xem cần bao nhiêu giá trị và cần loại giá trị nào để tạo nên một hợp luật hoàn chỉnh Nếu việc viết ra một số luật ban đầu này khó khăn thì có thể bắt đầu với 3 giá trị cho các biến ngôn ngữ vào và 5 giá trị cho biến ngôn ngữ ra (đây là giá trị tối thiểu cho hầu hết ứng dụng) Sau đó khi thiết kế hợp luật, ta có thể thêm vào nếu cần.

2.2.1.3 Kiểu hàm phụ thuộc

Có khá nhiều hàm phụ thuộc đợc đề cập đến trong tài liệu Nhng trong thực tế ứng dụng thì chỉ có một số dạng sau đây đợc dùng, chủ yếu là nhằm đơn giản hóa việc tính toán.

2.2.1.4 Tạo hệ luật

Các luật trong hệ mờ thể hiện những gì ta muốn hệ hoạt động, tức là dựa trên tri thức của con ngời mà hệ mờ đa ra hành vi Căn cứ vào những biến ngôn ngữ đã xác

định, hệ luật đợc tạo ra từ những bớc sau :

Bớc 1 đối với mỗi kết hợp của các tập mờ ở đầu vào (tức ở phần If), ta định

nghĩa một luật Dùng giải pháp dung hòa cho tất cả các tập mờ của đầu ra (phần Then), ta đợc tổng số luật của hệ luật.

Trang 24

Nh vậy, nếu ta có hai biến ngôn ngữ ở đầu vào, một biến ngôn ngữ ở đầu ra, mỗi biến ngôn ngữ đợc định nghĩa với 5 tập mờ thì tổng số luật có đợc là 5x5x5 =

125 luật.

Bớc 2 nếu một tập mờ Zi nào đó của đầu ra không ảnh hởng bởi một biến ngôn

A.

Bớc 3 trong quá trình tối u ta sẽ nhận ra một luật nào đó cần phải tăng hay giảm

tác động của nó thì ta thay đổi tơng ứng.

Bớc 4 khi hệ đã hoạt động tốt thì cần kiểm tra để loại bỏ những luật không cần

thiết, bao gồm 2 loại :

Luật d : là những luật có tác động cũng nh không do sự trùng lắp giữa các luật trong hệ Ví nh hệ có luật

If x = A i And y = B j Then z = C k

If x = A i Then z = C k

thì rõ ràng luật thứ nhất d, cần phải loại bỏ.

Luật không bao giờ tác động : trong thiết kế có những luật này nhng khi đem áp dụng vào thực tế thì không bao giờ xảy ra những trờng hợp mà luật đã mô tả Trờng hợp này khó nhận thấy hơn trờng hợp đầu tiên, nhng đối với một phần mềm dùng cho thiết kế mờ thì bạn có thể dùng chức năng phân tích luật để loại

Trang 25

2.3 Thiết kế chi tiết khối ổn định vận tốc

2.3.1 Sơ đồ tính năng

Thông tin từ

hệ quang học

Vận tốc đặt 2 bánh xe

Bộ xử lý trung tâm độ rộng xungBộ điều chế cách lyMạch

Sơ đồ tính năng Robot tự hành

Bắt đầu

đo vận tốcKhống chế gia tốc

ổn định vận tốcBảo vệ chống kẹt xeKết thúc

Sơ đồ các khối chức năng trong bộ xử lý trung tâm

Trang 26

2.3.2 ThiÕt kÕ chi tiÕt

2.3.2.1 ThiÕt kÕ chi tiÕt phÇn cøng, phÇn mÒm

Trang 27

Phần cứng bộ điều chế độ rộng xung đợc tạo bởi 2 vi xử lý 89C2051 Lý

do cần dùng đến 2 vi xử lý là do cần phải điều khiển độc lập 2 động cơ mộtchiều kích từ độc lập gắn trên xe

Các thông số của vi xử lý 89C2051:

Sơ đồ chân:

Sơ đồ các khối chức năng:

Trang 28

Thiết kế chi tiết:

- Sơ đồ mạch nguyên lý:

Trang 29

2.3.2.1.3 Bộ phản hồi tốc độ

Bộ phản hồi tốc độ bao gồm cả phần cứng và phần mềm Phần cứng cónhiệm vụ tạo ra một tín hiệu là một chuỗi xung liên tiếp có tần số phụ thuộcvào tốc độ quay của động cơ và một tín hiệu thể hiện chiều đang quay của

động cơ Cả 2 tín hiệu này đều đợc đa vào bộ xử lý trung tâm để đo quãng ờng xe đi đợc và tính toán vận tốc hiện tại của mỗi bánh xe rồi suy ra vận tốcsai lệch giữa các bánh xe

đ-Phần cứng

Mạch phản hồi tốc độ sử dụng Triggered D Flip – Flops 74LS74 đểphản hồi chiều quay của động cơ các thông số kỹ thuật của 74LS74:

Trang 30

Bộ ECD phản hồi tốc độ có độ phân giải 100 xung/Vòng 2 chiều gắn sẵntrên động cơ:

Trang 31

3 Bộ xử lý trung tâm

3.1 Khảo sát họ vi điều khiển 8051

IC vi điều khiển 8051 thuộc họ MCS51 có các đặc điểm sau:

 4Kbyte ROM (đợc lập trình bởi nhà sản xuất chỉ có ở 8051)

 128 buýt RAM

 4 port I/ 0 8 bit

 Hai bộ định thời 16 bit

 Giao tiếp nối tiếp

 64 KB không gian bộ nhớ chơng trình mở rộng

 64 KB không gian bộ nhớ dữ liệu mở rộng

Một bộ xử lý luận lý (thao tác trên các bit đơn)

 210 bit đợc địa chỉ hoá

 Bộ nhân/chia 4às

Trang 32

Cấu trúc bên trong của 8051 / 8031

Phần chính của vi điều khiển 8051 / 8031 là bộ xử lý trung tâm Central Processing Unit) bao gồm:

(CPU-Thanh ghi tích luỹ A

Thanh ghi tích luỹ phụ B, dùng cho phép nhân và chia

Đơn vị logic học (ALU : Arithmetic Logical Unit)

Từ trạng thái chơng trình (PSW : Program Status Word)

T1*

T2*

P0 P1 P2 P3

INT\ * 1 INT\ * 0 TIMER2 TIMER1 PORT nối tiếp

EA\ RST PSEN ALE

Các thanh ghi khác 128 byte Ram

Rom 4K-8051 OK-8031 Timer1Timer2

Điều

khiển ngắt

Điều khiển bus

CPU

Port nối tiếp Các port I\O

Tạo

dao

động

Trang 33

Đơn vị xử lý trung tâm nhận trực tiếp xung từ bộ dao động, ngoài ra còn

có khả năng đa một tín hiệu giữ nhịp từ bên ngoài

Chơng trình đang chạy có thể cho dừng lại nhờ một khối điều khiểnngắt ở bên trong Các nguồn ngắt có thể là: Các biến cố ở bên ngoài, sự tràn

bộ đếm định thời hoặc cũng có thể là giao diện nối tiếp

Hai bộ định thời 16 bit hoạt động nh một bộ đếm

Các cổng (Port0, Port1, Port2, Port3) sử dụng vào mục đích điều khiển

ở cổng 3 có thêm các đờng dẫn điều khiển dùng để trao đổi với bộ nhớbên ngoài hoặc để đầu nối giao diện nối tiếp, cũng nh các đờng ngắt dẫn bênngoài

Giao diện nối tiếp có chứa một bộ truyền và bộ nhận không đồng bộ,làm việc độc lập với nhau Tốc độ truyền qua cổng nối tiếp có thể đặt trong rảirộng và đợc ấn định bằng một định thời

Trong vi điều khiển 8051 / 8031 có hai thành phần quan trọng khác đó

là bộ nhớ và các thanh ghi

Bộ nhớ gồm có bộ nhớ Ram và bộ nhớ Rom (chỉ có ở 8031) dùng để lutrữ dữ liệu và mã lệnh

Các thanh ghi sử dụng để lu trữ thông tin trong quá trình xử lý KhiCPU làm việc nó làm thay đổi nội dung của các thanh ghi

Trang 34

Chức năng các chân vi điều khiển

Sơ đồ chân 8051

a Port0: Là port có hai chức năng ở trên chân từ 32 đến 39 trong các

thiết kế cỡ nhỏ (không dùng bộ nhớ mở rộng) có hai chức năng nh các đờngI/O Đối với các thiết kế cỡ lớn (với bộ nhớ mở rộng) nó đợc kết hợp kênhgiữa các bus

b Port1: Là một port I/O trên các chân 18 Các chân đợc ký hiệu P1.0,P1.1,…P1.7 có thể dùng cho các thiết bị ngoài nếu cần Port 1 không có chứcnăng khác, vì vậy chúng ta chỉ dùng trong giao tiếp với các thiết bị ngoài

c Port2: Là một port công dụng kép trên các chân 2128 đợc dùng nhcác đờng xuất nhập hoặc là byte cao của bus địa chỉ đối với thiết kế dùng bộnhớ mở rộng

d Port3: Là một port công dụng kép trên các chân 10 17 Các châncủa port này có nhiều chức năng, các công dụng chuyển đổi có liên hệ với các

đặc tính đặc biệt của 8051/8031 nh ở bảng sau:

Trang 35

P3.1 TXD Dữ liệu phát cho port nối tiếp

Chức năng của các chân trên port 3

e PSEN (Program Store Enable): 8051/8031 có 4 tín hiệu điều khiển

PSEN là tín hiệu ra trên chân 29 Nó là tín hiệu điều khiển để cho phép bộ nhớchơng trình mở rộng và thờng đợc nối đến chân OE (Output Enable) của mộtEPROM để cho phép đọc các bytes mã lệnh

PSEN sẽ ở mức thấp cho thời gian lấy lệnh Các mã nhị phân của chơngtrình đợc đọc từ EPROM qua bus và đợc chốt vào thanh ghi lệnh của 8051 đểgiả mã lệnh Khi thi hành chơng trình trong EPROM nội (8051) PSEN sẽ ởmức thụ động (mức cao)

f ALE (Address Latch Enable): Tín hiệu ra trên chân 30 tơng hợp với

các thiết bị làm việc với các xử lý 8585, 8088, 8086, 8051 dùng ALE mộtcách tơng tự cho làm việc giải các kênh các bus địa chỉ và dữ liệu khi port 0 đ-

ợc dùng trong chế độ chuyển đổi của nó: Vừa là bus dữ liệu vừa là bus thấpcủa địa chỉ, ALE là tín hiệu để chốt địa chỉ vào một thanh ghi bên ngoài trongnửa đầu của chu kỳ bộ nhớ Sau đó các đờng port 0 dùng để xuất hoặc nhập dữliệu trong nửa sau chu kỳ bộ nhớ

Các xung tín hiệu ALE có tốc độ bằng 1/6 lần tần số dao động trên chip

và có thể đợc dùng là nguồn xung nhịp cho các hệ thống Nếu xung trên 8051

là 12MHz thì ALE có tần số 2MHz Chỉ ngoại trừ khi thi hành lệnh MOVX,một xung ALE sẽ bị mất Chân này cũng đợc làm ngõ vào cho xung lập trìnhcho EPROM trong 8051

g EA (External Access): Tín hiệu vào EA trên 31 thờng đợc mắc lên

mức cao (+5V) hoặc mức thấp (GND) Nếu ở mức cao, 8051 thi hành chơngtrình từ ROM nội trong khoảng địa chỉ thấp (4K) Nếu ở mức thấp, chơngtrình chỉ đợc thi hành từ bộ nhớ mở rộng Khi dùng 8031 EA luôn đợc nối

Trang 36

bộ nhớ bên trong chơng trình 8051 sẽ bị cấm và chơng trình thi hành từEPROM mở rộng Ngời ta còn dùng chân EA làm chân cấp điện áp 12V khilập trình cho EPROM trong 8051.

h RST (Reset): Ngõ vào RST trên chân 9 là ngõ reset của 8051 Khi tín

hiệu này đợc đa lên mức cao (trong ít nhất 2 chu kỳ máy), các thanh ghi trong

8051 đợc tải những giá trị thích hợp để khởi động hệ thống

i Các ngõ vào bộ dao động trên chip: Nh đã thấy trên các hình trên,

8051 có một bộ dao động trên chip Nó thờng đợc nối với thạch anh giữa haichân 18 và 19 Các tụ giữa cũng cần thiết nh đã vẽ Tần số thạch anh thông là12MHz

j Các chân nguồn: 8051 vận hành với nguồn đơn +5V Vcc đợc nối vàochân 40 và Vss (GND) đợc nối vào chân 20

Tổ chức bộ nhớ

8051 / 8031 có bộ nhớ theo cấu trúc Harvard: có những vùng cho bộ nhớriêng biệt cho chơng trình dữ liệu Nh đã nói ở trên, cả chơng trình và dữ liệu

có thể ở bên trong 8051, dù vậy chúng có đợc mở rộng bằng các thành phầnngoài nên đến tối đa 64 Kbytes bộ nhớ chơng trình và 64 Kbytes bộ nhớ dữliệu

Bộ nhớ bên trong bao gồm ROM (8051) và RAM trên chip, RAM trênchip bao gồm nhiều thành phần: phần lu trữ đa dụng, phần lu trữ địa chỉ hoátừng bit, các bank thanh ghi và các thanh ghi chức năng đặc biệt

Tóm tắt các vùng bộ nhớ của 8051/ 8031 Hai đặc tính cần lu ý là:

trong bộ nhớ và có thể đợc truy xuất trực tiếp nh các địa chỉ bộ nhớ khác

RAM ngoài nh trong các bộ vi xử lý khác

* Chi tiết về bộ nhớ RAM trên chip:

Nh ta đã thấy trên hình sau, RAM bên trong 8051 / 8031 đợc phân chiagiữa các bank thanh ghi (00H-1FH), RAM địa chỉ hoá từng bit (20H-2FH),RAM đa dụng (30H-7FH) và các thanh ghi chức năng đặc biệt (80H - FFH)

Bộ nhớ ch

ơng trình

đ ợc chọn qua PSEN

FFFF

0000

Bộ nhớ dữ liệu đ ợc chọn qua

WR và RD

FFFF

0000 FF

00

Trang 37

a RAM đa dụng:

302F2E2D2C2B2A292827262524232221201F1817100F080700

RAM đa dụng

Bảng tóm tắt bản đồ vùng nhớ trên chip data 8051

Trang 38

Địa chỉ byte Địa chỉ bit

9F 9E 9D 9C 9B 9A 99 98 SCON

97 96 95 94 93 92 91 90 P1

TH1 TH0 TL1 TL0 TMOD

Not bit addressable Not bit addressable Not bit addressable Not bit addressable Not bit addressable 8F 8E 8D 8C 8B 8A 89 88 TCON

DPH DPL SP

Not bit addressable Not bit addressable Not bit addressable

b RAM địa chỉ hoá từng bit:

8051 / 8031 chứa 210 bit đợc địa chỉ hoá, trong đó 128 bit là ở các địachỉ byte 20H đến 2FH và phần còn lại trong các thanh ghi chức năng đặc biệt

Trang 39

ý tởng truy xuất từng bit riêng rẽ bằng phần mềm là một đặc tính tiệnlợi của vi điều khiển nói chung Các bit có thể đợc đặt, xoá, AND, OR,… vớimột lệnh đơn Đa số các địa chỉ xử lý đòi hỏi một chuỗi lệnh đọc – sửa –ghi để đạt đợc hiệu quả tơng tự Hơn nữa các port I/O cũng đợc địa chỉ từngbit làm đơn giản phần mềm xuất nhập từng bit.

Có 128 bit đợc địa chỉ hoá đa dụng ở các byte 20H đến 2FH Các địachỉ này đợc truy xuất nh các byte hoặc các bit phụ thuộc vào lệnh đợc dùng

Ví dụ, để đặt bit 67H, ta dùng lệnh:

SETB 67H

Chú ý rằng “địa chỉ bit 67H” là bit có trọng số lớn nhất (MSB) ở địa chỉbyte 2CH” lệnh trên sẽ không tác động đến các bit khác của địa chỉ này

c Các bank thanh ghi:

32 byte thấp nhất của bộ nhớ nội là dành cho các thanh ghi Bộ lệnh của

8051 / 8031 hỗ trợ 8 thanh ghi (R0 đến R7) và theo mặc định (sau khi reset hệthống) các thanh ghi này ở các địa chỉ 00H- 07H

Các lệnh dùng các thanh ghi R0 đến R7 thì sẽ ngắn hơn và nhanh hơncác lệnh tơng ứng nhng địa chỉ trực tiếp Các giá trị dữ liệu đợc dùng thờngxuyên nên dùng một trong các thanh ghi này

Bank thanh ghi tích cực có thể chuyển đổi bằng cách thay đổi các bitchọn bank thanh ghi trong từ trạng thái chơng trình (PSW) Giả sử rằng bankthanh ghi 3 đợc tích cực, lệnh sau sẽ ghi nội dung của thanh ghi tích luỹ vào

địa chỉ 18H:

MOV R0, A

ý tởng dùng “các bank thanh ghi” cho phép “chuyển hớng” chơng trìnhnhanh và hiệu quả (từng phần riêng rẽ của phần mềm sẽ có một bộ thanh ghiriêng không phụ thuộc vào các phần khác)

Các thanh ghi chức năng đặc biệt

Các thanh ghi nội dung của 8051 / 8031 đợc truy xuất ngầm định bởi bộlệnh Ví dụ lệnh “INC A” sẽ tăng nội dung của thanh ghi tích luỹ A nên 1 Tác

động này đợc ngầm định trong mã lệnh

Các thanh ghi trong 8051 / 8031 đợc định dạng nh một phần của RAMtrên chip Vì vậy mỗi thanh ghi sẽ có một địa chỉ (ngoại trừ thanh ghi trựctiếp, sẽ không có lợi khi đặt chúng vào trong RAM trên chip) Đó là lý do để

Trang 40

năng đặc biệt (SFR: Special Funtion Rgister) ở vùng trên của RAM nội, từ địachỉ 80H đến FFH Chú ý rằng hầu hết 128 địa chỉ từ 80H đến FFH không đợc

định nghĩa Chỉ có 21 địa chỉ SFR là đợc định nghĩa

Ngoại trừ tích luỹ (A) có thể đợc truy xuất ngầm nh đã nói, đa số cácSFR đợc truy xuất dùng địa chỉ trực tiếp Chú ý rằng một vài SFR có thể đợc

địa chỉ bit hoặc byte Ngời thiết kế phải thận trọng khi truy xuất bit hoặc byte

Ví dụ lệnh sau:

SETB 0E0H

Sẽ Set bit 0 trong thanh ghi tích luỹ, các bit không thay đổi Ta thấyrằng E0H đồng thời là địa chỉ byte của thanh ghi tích luỹ và là địa chỉ bit cótrọng số nhỏ nhất trong thanh ghi tích luỹ Vì lệnh SETB chỉ tác động trên bit,nên chỉ có địa chỉ bit là có hiệu quả

OVP

D7HD6HD5HD4HD3H

D2HD1HD0H

Cờ nhớ

Cờ nhớ phụ

Cờ 0Bit 1 chọn bank thanh ghiBit chọn bank thanh ghi00=bank 0; địa chỉ 00H-07H01=bank 1: địa chỉ 08H-0FH10=bank 2: địa chỉ 10H-17H11=bank 3: địa chỉ 18H-1FH

Ngày đăng: 06/06/2014, 09:49

HÌNH ẢNH LIÊN QUAN

Hình dáng bên ngoài của vi mạch L298 - Đồ án tốt nghiệp-  thiết kế bộ điều khiển tự động cho robot tự hành
Hình d áng bên ngoài của vi mạch L298 (Trang 16)
Sơ đồ tính năng Robot tự hành - Đồ án tốt nghiệp-  thiết kế bộ điều khiển tự động cho robot tự hành
Sơ đồ t ính năng Robot tự hành (Trang 25)
Sơ đồ các khối chức năng trong bộ xử lý trung tâm - Đồ án tốt nghiệp-  thiết kế bộ điều khiển tự động cho robot tự hành
Sơ đồ c ác khối chức năng trong bộ xử lý trung tâm (Trang 25)
Sơ đồ các khối chức năng: - Đồ án tốt nghiệp-  thiết kế bộ điều khiển tự động cho robot tự hành
Sơ đồ c ác khối chức năng: (Trang 27)
Sơ đồ chân: - Đồ án tốt nghiệp-  thiết kế bộ điều khiển tự động cho robot tự hành
Sơ đồ ch ân: (Trang 27)
Sơ đồ chân 8051 - Đồ án tốt nghiệp-  thiết kế bộ điều khiển tự động cho robot tự hành
Sơ đồ ch ân 8051 (Trang 34)
Bảng tóm tắt bản đồ vùng nhớ trên chip data 8051 - Đồ án tốt nghiệp-  thiết kế bộ điều khiển tự động cho robot tự hành
Bảng t óm tắt bản đồ vùng nhớ trên chip data 8051 (Trang 37)
Bảng 2.3: Trạng thái các thanh ghi sau khi reset - Đồ án tốt nghiệp-  thiết kế bộ điều khiển tự động cho robot tự hành
Bảng 2.3 Trạng thái các thanh ghi sau khi reset (Trang 44)
Bảng sau mô tả các địa chỉ bộ nhớ và các ngắt phần cứng đối với 4 cổng nối tiếp chuẩn cho các máy tính tơng thích với máy tính PC - Đồ án tốt nghiệp-  thiết kế bộ điều khiển tự động cho robot tự hành
Bảng sau mô tả các địa chỉ bộ nhớ và các ngắt phần cứng đối với 4 cổng nối tiếp chuẩn cho các máy tính tơng thích với máy tính PC (Trang 63)
Bảng trên mô tả thứ tự theo đó các BIOS sẽ tìm kiếm các cổng hoạt - Đồ án tốt nghiệp-  thiết kế bộ điều khiển tự động cho robot tự hành
Bảng tr ên mô tả thứ tự theo đó các BIOS sẽ tìm kiếm các cổng hoạt (Trang 65)
Bảng sau cho biết sự liên quan giữ các tín hiệu CE, C/D\ RD\ - Đồ án tốt nghiệp-  thiết kế bộ điều khiển tự động cho robot tự hành
Bảng sau cho biết sự liên quan giữ các tín hiệu CE, C/D\ RD\ (Trang 68)
Sơ đồ bên trong của MAX232 - Đồ án tốt nghiệp-  thiết kế bộ điều khiển tự động cho robot tự hành
Sơ đồ b ên trong của MAX232 (Trang 70)
Bảng 5.2: Các giá trị của thanh ghi TH1 trong Timer1 cho các tốc độ - Đồ án tốt nghiệp-  thiết kế bộ điều khiển tự động cho robot tự hành
Bảng 5.2 Các giá trị của thanh ghi TH1 trong Timer1 cho các tốc độ (Trang 72)
Sơ đồ tính năng - Đồ án tốt nghiệp-  thiết kế bộ điều khiển tự động cho robot tự hành
Sơ đồ t ính năng (Trang 78)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w