Các thông số khác

Một phần của tài liệu Luận văn thiết kế chế tạo bộ điều khiển số quá trình trên nền vi điều khiển AVR (Trang 29)

5. Nôi dung của ựề tài

1.5.2. Các thông số khác

Bảng 1.1: Thông số của bộ ựiều khiển số E5AR

Chế ựộ ựiều khiển

điều khiển chuẩn, ựiều khiển nóng lạnh, ựiều khiển chuẩn với dặt ựiểm làm việc từ xa, ựiều khiển tầng chuẩn, ựiều khiển tỷ lệ, ựiều khiển vị trắ-tỷ lệ

Chu kỳ ựiều khiển 0.2-99.0s ựơn vị là 0.1s

Dải tỷ lệ 0.00%-999.9% FS

Thời gian tắch phân 0.0-3999.9s

Thời gian vi phân 0.0-3999.9

độ trễ 0.01-99.9% FS

Chu kỳ trắch mẫu ựầu vào 50ms

đặt lại giá trị bằng tay 0.0-100.0%

Trở kháng cách ly Nhỏ nhất là 20MΩ (500VDC)

Sức chịu của ựiện môi 2000VAC, 50-60Hz trong 1 phút

Dao ựộng trở kháng 10-55Hz, 20m/s

2 trong 10 phút cho mỗi hướng

X,Y,Z

Sốc trở kháng 100 m/s2 3 lần cho mỗi hướng X,Y,Z

Dòng khởi ựộng Loại 100-240VAC lớn nhất là 50A

Trường đại học Nông Nghiệp Hà Nội Ờ Luận văn thạc sĩ khoa học kỹ thuật ẦẦẦẦẦẦẦẦẦ.. 18

CHƯƠNG II

GIỚI THIỆU CHUNG VỀ BỘ VI đIỀU KHIỂN 2.1. Giới thiệu chung

Bộ vi ựiều khiển viết tắt là Micro Ờ controller, là mạch tắch hợp trên một con chip và có thể lập trình ựược, dùng ựể ựiều khiển hoạt ựộng của một hệ thống. Theo các tập lệnh của nhà sản xuất, người sử dụng có thể lập trình ựể vi ựiều khiển tiến hành ựọc, giải mã, lưu trữ thông tin, xử lý thông tin, và từ ựó sẽ thực hiện một công việc của một cơ cấu nào ựó.

Trong thiết bị ựiện, ựiện tử dân dụng, các bộ vi ựiều khiển ựiều khiển hoạt ựộng của TV, ựầu ựọc laser, ựiện thoại, lò vi sóng. Trong hệ thống công nghiệp tự ựộng, chúng ựược sử dụng trong Robot, dây truyền băng tự ựộng. Các hệ thống càng thông minh thì bộ vi ựiều khiển càng ựóng vai trò quan trọng.

2.2. Giới thiệu tổng quan về vi ựiều khiển ATMEGA 16

ATmega16 là vi ựiều khiển chuẩn CMOS 8 bit tiết kiệm năng lượng, ựược chế tạo dựa trên cấu trúc AVR RISC (Reduced Instruction Set Computer), ựây là cấu trúc có tốc ựộ xử lý cao hơn nhiều so với cấu trúc CISC (Complex Instruction Set Computer). Tần số hoạt ựộng của vi ựiều khiển AVR bằng với tần số của thạch anh, trong khi với họ vi ựiều khiển theo cấu trúc CISC như họ 8051 thì tần số hoạt ựộng bằng tần số thạch anh chia cho 12. Hầu hết các lệnh ựược thực thi trong một chu kỳ xung nhịp, do ựó ATmega16 có thể ựạt ựược tốc ựộ xử lý ựến một triệu lệnh mỗi giây (với tần số 1MHz). đặc ựiểm này cho phép người thiết kế có thể tiết kiệm tối ựa mức ựộ tiêu thụ năng lượng mà vẫn ựảm bảo tốc ựộ xử lý.

2.2.1. đặc tắnh của ATmega16

Ớ Hiệu năng cao, tiêu thụ ắt năng lượng.

Ớ Kiến trúc RISC:

- 131 lệnh Ờ hầu hết các lệnh thực thi trong một chu kỳ máy. - 32 thanh ghi 8 bit ựa năng.

Trường đại học Nông Nghiệp Hà Nội Ờ Luận văn thạc sĩ khoa học kỹ thuật ẦẦẦẦẦẦẦẦẦ.. 19

- Tốc ựộ thực hiện lên tới 16 triệu lệnh trong 1 giây (tần số 16MHz).

Ớ Các bộ nhớ chương trình và bộ nhớ dữ liệu:

- 16Kbyte bộ nhớ Flash có khả năng tự lập trình trong hệ thống. - Có thể thực hiện ựược 1.000 lần ghi xóa.

- Vùng mã Boot tùy chọn với những bit khóa ựộc lập. - Lập trình trong hệ thống bởi chương trình on-chip boot. - Thao tác ựọc ghi trong khi nghỉ.

- 512 Byte EEPROM. Có thể thực hiện 100.000 lần ghi xóa. - 1Kbyte SRAM nội.

- Lập trình khóa an toàn phần mềm.

Ớ Ghép nối ngoại vi:

- 2 bộ ựịnh thời/bộ ựếm 8 bit với bộ chia tần số ựộc lập và chế ựộ so sánh. - 1 bộ ựịnh thời/bộ ựếm 16 bit với bộ chia tần số, chế ựộ so sánh và chế ựộ bắt mẫu (Capture).

- Bộ ựếm thời gian thực với bộ dao ựộng ựộc lập. - Bốn kênh PWM.

- Bộ ADC 8 kênh 10 bit.

- Bộ truyền dữ liệu ựồng bộ/bất ựồng bộ USART. - Bộ truyền dữ liệu chuẩn SPI.

- Watchdog timer khả trình với bộ dao ựộng nội riêng biệt. - Bộ so sánh Analog.

Ớ Các ựặc ựiểm khác:

- Power-on Reset và phát hiện Brown-out khả trình. - Bộ tạo dao ựộng nội.

- Nguồn ngắt nội và ngoại.

- 6 chế ựộ ngủ: Idle, ADC noise reduction, Power - save, Power-down, Standby và Extended Standby.

Ớ Ngõ vào/ra: có 32 ngõ vào ra.

Trường đại học Nông Nghiệp Hà Nội Ờ Luận văn thạc sĩ khoa học kỹ thuật ẦẦẦẦẦẦẦẦẦ.. 20

4.5V - 5.5V ựối với ATmega16 (2.7V-5.5V ựối với ATmega16L)

Ớ Tần số hoạt ựộng:

0 - 16MHz ựối với ATmega16. (0-8MHz ựối với ATmega16L)

Trường đại học Nông Nghiệp Hà Nội Ờ Luận văn thạc sĩ khoa học kỹ thuật ẦẦẦẦẦẦẦẦẦ.. 21

Hình 2.1: Sơ ựồ cấu trúc bên trong Atnega16

ATmega16 có các ựặc ựiểm sau: 16KB bộ nhớ Flash với khả năng ựọc trong khi ghi, 512 byte bộ nhớ EEPROM, 1KB bộ nhớ SRAM, 32 thanh ghi chức năng chung, 32 ựường vào/ra chung, 3 bộ ựịnh thời/bộ ựếm, ngắt nội và ngắt ngoại, USART, giao tiếp nối tiếp 2 dây, 8 kênh ADC 10 bit,....

ATmega 16 hỗ trợ ựầy ựủ các chương trình và công cụ phát triển hệ thống như: trình dịch C, macro assemblers, chương trình mô phỏng/sửa lỗi, kit thử nghiêm,...

2.2.3. Các cổng vào/ra (các PORT xuất nhập ựa dụng)

Hình 2.2: Sơ ựồ chân của ATmega16

- Vi ựiều khiểnATmega16 có 32 ựường vào/ra chia làm bốn nhóm 8 bit một. Các ựường vào/ra này có rất nhiều tắnh năng và có thể lập trình ựược. Ở ựây ta sẽ xét chúng là các cổng vào/ra số. Nếu xét trên mặt này thì các cổng vào/ra này là cổng vào ra hai chiều có thể ựịnh hướng theo từng bit và chứa cả ựiện trở pull-up (có thể lập trình ựược). Mặc dù mỗi port có các ựặc ựiểm riêng nhưng khi xét chúng là các cổng vào/ra số thì dường như ựiều khiển vào/ra dữ liệu thì hoàn toàn như nhau. Chúng ta có thanh ghi và một ựịa chỉ cổng ựối với mỗi cổng, ựó là: thanh ghi

Trường đại học Nông Nghiệp Hà Nội Ờ Luận văn thạc sĩ khoa học kỹ thuật ẦẦẦẦẦẦẦẦẦ.. 22

dữ liệu cổng (PORTA, PORTB, PORTC, PORTD), thanh ghi dữ liệu ựiều khiển cổng (DDRA, DDRB, DDRC, DDRD) và cuối cùng là ựịa chỉ chân vào của cổng (PINA, PINB, PINC, PIND).

- Thanh ghi DDRx

đây là thanh ghi 8 bit (ta có thể ựọc và ghi các bit ở thanh ghi này) và có tác dụng ựiều khiển hướng cổng PORTx (tức là cổng ra hay cổng vào). Nếu như một bit trong thanh ghi này ựược set thì bit tương ứng ựó trên PORTx ựược ựịnh nghĩa như một cổng ra. Ngược lại nếu như bit ựó không ựược set thì bit tương ứng trên PORTx ựược ựịnh nghĩa là cổng vào.

- Thanh ghi PORTx

đây cũng là thanh ghi 8 bit (các bit có thể ựọc và ghi ựược) nó là thanh ghi dữ liệu của cổng Px và trong trường hợp nếu cổng ựược ựịnh nghĩa là cổng ra thì khi ta ghi một bit lên thanh ghi này thì chân tương ứng trên port ựó cũng có cùng mức logic. Trong trường hợp mà cổng ựược ựịnh nghĩa là cổng vào thì thanh ghi này lại mang dữ liệu ựiều khiển cổng. Cụ thể nếu bit nào ựó của thanh ghi này ựược set (ựưa lên mức 1) thì ựiện trở kéo lên (pull-up) của chân tương ứng của port ựó sẽ ựược kắch hoạt. Ngược lại nó sẽ ở trạng thái hi-Z. Thanh ghi này sau khi khởi ựộng Vi ựiều khiển sẽ có giá trị là 0x00.

- Thanh ghi PINx

đây là thanh ghi 8 bit chứa dữ liệu vào của PORTx (trong trường hợp PORTx ựược thiết lập là cổng vào) và nó chỉ có thể ựọc mà không thể ghi vào ựược.

- Ngoài ra còn có các chân như: + GND: chân nối mass.

+ VCC: ựiện áp nguồn.

+ Reset: Chân ngõ vào. Khi ựặt vào chân này ựiện áp mức thấp trong thời gian xác ựịnh thì sẽ reset chương trình. Nếu thời gian ngắn hơn thì việc reset không thành công.

+ XTAL1: ngõ vào khuếch ựại dao ựộng ựảo và cũng là ngõ vào mạch tạo xung nội.

Trường đại học Nông Nghiệp Hà Nội Ờ Luận văn thạc sĩ khoa học kỹ thuật ẦẦẦẦẦẦẦẦẦ.. 23

+ XTAL2: ngõ ra của mạch khuếch ựại dao ựộng ựảo.

+ AVCC: là chân nguồn cấp cho Port A và bộ chuyển ựổi A/D. Nên nối chân này với chân VCC ngay cả khi không sử dụng ADC. Nếu dùng ADC thì nên nối chân này với chân VCC qua 1 tụ lọc thông thấp.

+ AREF: chân tham chiếu ựiện áp analog của bộ chuyển ựổi A/D.

2.2.4. Bộ biến ựổi ADC

- Vi ựiều khiểnATmega16 có một bộ biến ựổi ADC tắch hợp trong chip với các ựặc ựiểm:

+ độ phân giải 10 bit

+ Sai số tuyến tắnh: 0.5LSB + độ chắnh xác +/-2LSB

+ Thời gian chuyển ựổi: 65-260ộs + 8 Kênh ựầu vào có thể ựược lựa chọn

+ Có hai chế ựộ chuyển ựổi free running và single conversion + Có nguồn báo ngắt khi hoàn thành chuyển ựổi

Trường đại học Nông Nghiệp Hà Nội Ờ Luận văn thạc sĩ khoa học kỹ thuật ẦẦẦẦẦẦẦẦẦ.. 24

Hình 2.3: Sơ ựồ bộ biến ựổi ADC

- 8 ựầu vào của ADC là 8 chân của PORTA và chúng ựược chọn thông qua một MUX.

- để ựiều khiển hoạt ựộng vào ra dữ liệu của ADC và CPU chúng ta có 3 thanh ghi: ADMUX là thanh ghi ựiều khiển lựa chọn kênh ựầu vào cho ADC, ADCSRA là thanh ghi ựiều khiển và thanh ghi trạng thái của ADC, ADCH và ADCL là 2 thanh ghi dữ liệu.

- ADMUX: Multiplexer select register đây là thanh ghi ựiều khiển 8 bit.

Trường đại học Nông Nghiệp Hà Nội Ờ Luận văn thạc sĩ khoa học kỹ thuật ẦẦẦẦẦẦẦẦẦ.. 25

Hình 2.4: Thanh ghi ADMUX

Với 4 bit ựược ựịnh nghĩa là MUX3, MUX2, MUX1,và MUX0, ứng với các tổ hợp logic ta có thể chọn kênh ựầu vào. Cụ thể:

Bảng 2.1: Tổ hợp logic chọn kênh ựầu vào

Các bit REFS1 và REFS0 dùng ựể chọn giá trị ựiện áp tham khảo cho ADC, như sau:

Bảng 2.2: Chọn chọn giá tri ựiện cho ADC của các bit REFS1 và REFS0

Chú ý: Nếu như ta thay ựổi kênh trong thời ựiểm mà ADC ựang chuyển ựổi thì khi quá trình chuyển ựổi ựã hoàn thành thì kênh vào mới ựược thay ựổi.

- ADCSRA-ADC control and status register

Trường đại học Nông Nghiệp Hà Nội Ờ Luận văn thạc sĩ khoa học kỹ thuật ẦẦẦẦẦẦẦẦẦ.. 26

Hình 2.5: Thanh ghi ựiều khiển và trạng thái ADC

- Thanh ghi dữ liệu ACDH và ADCL: Thanh ghi này chứa dữ liệu chuyển ựổi từ tương tự sang số, ựược sắp xếp như hình dưới ựây.

Hình 2.6: Thanh ghi dữ liệu ADC

- Nguyên tắc hoạt ựộng và lập trình ựiều khiển

ADC có nhiệm vụ chuyển ựổi tắn hiệu ựiện áp tương tự thành tắn hiệu số có ựộ phân giải 10 bit.Với giá trị nhỏ nhất của ựiện áp ựặt ở chân AGND và giá trị cực ựại của ựiện áp tương tự ựược mắc vào chân AREF. Tám kênh tương tự ựầu vào ựược chọn lựa thông qua ADMUX và ADMUX này ựược ựiều khiển bởi thanh ghi ADMUX.

ADC này có thể hoạt ựộng ựược ở hai chế ựộ. đó là chuyển ựổi ựơn: chỉ chuyển ựổi một lần khi có lệnh chuyển ựổi và chế ựộ tự chuyển ựổi (Free running mode) ựây là chế ựộ mà ADC tự ựộng chuyển ựổi khi ựược hoạt ựộng và công việc chuyển ựổi có tắnh tuần hoàn (chỉ cần khởi ựộng một lần).

ADC ựược phép hoạt ựộng nhờ thiết lập bit ADEN. Quá trình chuyển ựổi ựược bắt ựầu bằng việc ghi vào bit ADSC mức logic 1 và trong suốt quá trình chuyển ựổi bit này luôn ựược giữ ở mức cao. Khi quá trình chuyển ựổi hoàn thành thì bit này ựược xóa bằng phần cứng và cờ AIDF ựược bật lên.

Dữ liệu sau khi chuyển ựổi ựược ựưa ra thanh ghi dữ liệu ADCL và ADCH, nhưng chú ý khi ựọc dữ liệu từ hai thanh ghi này thì ựọc ADCL trước rồi mới ựọc

Trường đại học Nông Nghiệp Hà Nội Ờ Luận văn thạc sĩ khoa học kỹ thuật ẦẦẦẦẦẦẦẦẦ.. 27

ADCH. Nếu ựọc ADCH trước thì dữ liệu cập nhật có thể ghi ựè lên ADCL (Vi ựiều khiển nghĩ rằng ựã ựọc xong dữ liệu).

để ựiều khiển vào ra dữ liệu với ADC, các bước thực hiện như sau:

Bước 1: định nghĩa các cổng vào cho tắn hiệu tương tự. Xóa bit tương ứng với chân ựó trong thanh ghi DDRA. Sau ựó loại bỏ ựiện trở treo bằng cách xóa bit tương ứng ở thanh ghi PORTA.

Bước 2: Chọn kênh tương tự vào (chọn chân vào cho ADC) thông qua thanh ghi ADMUX (có thể thay ựổi trong quá trình hoạt ựộng).

Bước 3: Thiết lập các thông số cho ADC

Tốc ựộ chuyển ựổi thông qua xung nhip chuyển ựổi. Chế ựộ chuyển ựổi : ựơn hoặc tự ựộng.

Sử dụng ngắt hoặc không.

Bước 4: Bắt ựầu chuyển ựổi và ựọc dữ liệu.

2.2.5. Bộ truyền nhận dữ liệu USART

- Bộ truyền nhận nối tiếp ựồng bộ và bất ựồng bộ là một thiết truyền thông nối tiếp có các chức năng chắnh như sau:

+ Hoạt ựộng song công (các thanh ghi truyền và nhận nối tiếp ựộc lập với nhau). + Hoạt ựộng ựồng bộ hoặc bất ựồng bộ

+ Bộ tạo tốc ựộ baud có ựộ chắnh xác cao

+ Hỗ trợ khung truyền nối tiếp với 5, 6, 7, 8, hoặc 9 bit dữ liệu và 1 hoặc 2 bit stop + Kiểm tra chẵn lẻ

+ Phát hiện tràn dữ liệu + Phát hiện lỗi khung

+ Lọc nhiễu, bao gồm phát hiện bit start lỗi và bộ lọc thông thấp số + Ngắt khi kết thúc truyền, thanh ghi truyền hết dữ liệu và kết thúc nhận + Chế ựộ truyền thông ựa vi xử lý

+ Chế ựộ truyền ựồng bộ tốc ựộ cao - Sơ ựồ khối của bộ USART như sau:

Trường đại học Nông Nghiệp Hà Nội Ờ Luận văn thạc sĩ khoa học kỹ thuật ẦẦẦẦẦẦẦẦẦ.. 28

Hình 2.7: Sơ ựồ khối bộ USART

- USART bao gồm 3 phần chắnh: bộ tạo xung clock, bộ truyền và bộ nhận. Các thanh ghi ựiều khiển ựược sử dụng chung giữa các phần này.

Ớ Tạo xung clock

- Bộ tạo xung clock tạo ra xung ựồng hồ căn bản cho bộ truyền và bộ nhận. USART hỗ trợ 4 chế ựộ hoạt ựộng xung clock: bất ựồng bộ, bất ựồng bộ tốc ựộ cao, truyền ựồng bộ master và truyền ựồng bộ slave. Sơ ựồ khối của bộ tạo xung clock như sau:

Trường đại học Nông Nghiệp Hà Nội Ờ Luận văn thạc sĩ khoa học kỹ thuật ẦẦẦẦẦẦẦẦẦ.. 29

Hình 3.8: đơn vị tạo xung clock

- txclk: xung ựồng hộ bộ truyền - rxclk: xung ựồng hồ bộ nhận

- xcki: tắn hiệu vào từ chân XCK, sử dụng cho hoạt ựộng truyền ựồng bộ master - xcko: tắn hiệu xung clock ngõ ra tới chân XCK, sử dụng cho hoạt ựộng truyền ựồng bộ slave

- fosc: tần số từ chân XTAL

Ớ định dạng khung truyền

- USART chấp nhận tất cả 30 tổ hợp của các ựịnh dạng khung truyền sau ựây: + 1 bit start

+ 5, 6, 7, 8, hoặc 9 bit dữ liệu + Có hoặc không có bit chẵn lẻ + 1 hoặc 2 bit stop

- Một khung truyền bắt ựầu với một bit start, theo sau ựó là bit có trọng số thấp nhất (LSB) của dữ liệu (có thể lên tới 9 bit), kết thúc bằng bit có trọng số lớn nhất (MSB) và bit stop.

Trường đại học Nông Nghiệp Hà Nội Ờ Luận văn thạc sĩ khoa học kỹ thuật ẦẦẦẦẦẦẦẦẦ.. 30

+ St: bit start (mức thấp) + (n): bit dữ liệu (0 ựến 8) + P: bit chẵn lẻ

+ Sp: bit stop (mức cao)

+ IDLE: không có dữ liệu truyền (mức cao trong suốt thời gian idle)

Ớ Khởi tạo USART

Quá trình khởi tạo USART bao gồm việc thiết lập tốc ựộ baud, thiết lập ựịnh dạng khung và kắch hoạt bộ truyền và bộ nhận.

Ớ Truyền thông dữ liệu-bộ truyền USART

Bộ truyền USART ựược kắch hoạt bằng cách thiết lập bit TXEN trong thanh ghi UCSRB. Khi bộ truyền ựược kắch hoạt, chân TxD hoạt ựộng như ngõ ra của bộ truyền nối tiếp. Tốc ựộ baud, chế ựộ hoạt ựộng và ựịnh dạng khung truyền phải ựược thiết lập trước khi thực hiện truyền dữ liệu.

- Truyền khung 5 ựến 8 bit dữ liệu: Việc truyền dữ liệu ựược thiết lập bằng cách nạp dữ liệu truyền vào bộ ựệm truyền. Dữ liệu trong bộ ựệm sẽ ựược ựưa vào thanh ghi dịch khi thanh ghi dịch ựã sẵn sàng gửi một khung mới.

- Truyền khung 9 bit dữ liệu: Nếu sử dụng 9 bit dữ liệu, bit thứ 9 phải ựược

Một phần của tài liệu Luận văn thiết kế chế tạo bộ điều khiển số quá trình trên nền vi điều khiển AVR (Trang 29)

Tải bản đầy đủ (PDF)

(108 trang)