Vi điều khiển Atmega AVR có công suất cao, tiêu thụ năng lượng thấp, cấu trúc RISC tiến với 130 lệnh với chu kỳ thực hiện đơn xung lớn nhất, 32 thanh ghi đa mục đích 8 bít, 16 MIPS tại tần số đặt 16 MHz, bộ nhân 2 chu kỳ On-chip, Power-on Reset và Brown-out Detection có thể lập trình, bộ dao động RC bên trong có thể lập trình các mức, 5 Mode ngủ (Idle, ADC Noise Reduction, Power-save, Power-down và Standby), có khả năng Reset khi bật nguồn, khả năng dò lỗi Brown out lập trình được, có nguồn ngắt trong và ngắt ngoài.

Cốt lõi của AVR là sự kết hợp các câu lệnh phong phú với 32 thanh ghi đa mục đích. Tất cả 32 thanh ghi đều trực tiếp kết nối tới bộ xử lý logíc số học - Arithmetic Logic Unit (ALU), cho phép truy nhập 2 thanh ghi độc lập trong một câu lệnh đơn được thực hiện trong một chu kỳ xung. Kết quả của cấu trúc trở nên gọn nhẹ, hiệu quả hơn, trong khi vẫn đạt được thời gian xử lý nhanh hơn gấp 10 lần các vi điều khiển CISC thông thường khác.

8K byte Flash trên chíp có thể lập trình với các khả năng đọc trong khi ghi (Read-While-Write), 512 byte EEPROM, 1K byte SRAM, 23 đường vào ra đa mục đích, 32 thanh ghi đa mục đích, 3 Timer/Counter rất linh hoạt với các compare mode, các ngắt trong và ngắt ngoài, một bộ USART nối tiếp có thể lập trình được, ghép nối nối tiếp 2 dây định hướng byte, 6 kênh ADC (8 kênh với loại TQFP và MLF packages) trong đó 4 (hoặc 6) kênh có độ chính xác 10-bit và 2 kênh có độ chính xác 8-bit, Watchdog Timer có thể lập trình được với bộ dao động bên trong, một cổng nối tiếp SPI và 5 mode tiết kiệm năng lượng có thể lựa chọn mềm.

- Idle mode dừng CPU trong khi vẫn cho phép SRAM, Timer/Counters, cổng SPI, và hệ thống ngắt tiếp tục chức năng của chúng.

- Power-down mode tiết kiệm nội dung thanh ghi, nhưng hạn định bộ dao động, không cho phép tất cả các chức năng khác của chíp được hoạt động cho đến khi ngắt tiếp theo hoặc Reset phần cứng xuất hiện.

- Trong Power-save mode, timer không đồng bộ tiếp tục chạy, cho phép sử dụng để duy trì thời gian nền, trong khi các phần còn lại của thiết bị được ngủ.

- ADC Noise Reduction mode dừng CPU và tất các module I/O ngoại trừ timer không đồng bộ và ADC để tối thiểu hóa nhiễu mạch trong suốt quá trình ADC trong chuyển đổi.

- Trong Standby mode, bộ dao động thạch anh/ resonator được phép chạy trong khi các phần còn lại của thiết bị được ngủ. Điều này cho phép start-up rất nhanh cùng với hiệu quả tiêu thụ ít năng lượng.

Thiết bị được sản suất áp dụng công nghệ tích hợp bộ nhớ non-volatile cao của Atmel. Bộ nhớ chương trình Flash này có thể lập trình thông qua ghép  nối tiếp SPI bằng chương trình lập trình bộ nhớ non-volatile riêng, hoặc bằng một chương trình boot on – chip, chạy trong AVR core. Chương trình boot có thể sử dụng bất kỳ một ghép nối nào để  download chương trình ứng dụng trong bộ nhớ Flash. Phần mềm trong Boot Flash sẽ tiếp tục chạy trong khi các phần sử dụng Flash vẫn được update, hỗ trợ cho hoạt động đọc trong khi ghi (Read-While-Write).

Bằng việc kết hợp với một CPU 8-bit RISC với bộ nhớ Flash tự lập trình trong hệ thống trên một chíp, Atmel ATmega8 là một vi điều khiển cực mạnh, thỏa mãn yêu cầu về một bộ vi điều khiển với độ linh hoạt cao và đem lại lợi nhuận lớn với rất nhiều các ứng dụng điều khiển tác động nhanh.

ATmega8 AVR cũng hỗ trợ đầy đủ về lập trình và phát triển các tool hệ thống, bao gồm bộ dịch C, macro assemblers, bộ mô phỏng/gỡ rối chương trình, In-Circuit Emulators, và evaluation kits.

  Lựa chọn cấu trúc thiết kế mạch điều khiển số cho khởi động mềm.

Phần này trình bày phân tích hai phương án thiết kế mạch điều khiển số cho khởi động mềm, từ đó lựa chọn ra phương án thích hợp để thực hiện thiết kế.

 Phương án 1:

Ở phương án 1, khâu giao tiếp (LCD, LED và bàn phím), khâu xử lý sự cố (quá dòng, quá áp, không khởi động được), khâu tạo luật logic (khởi động mềm, dừng mềm), khâu bắt sườn đồng pha và tạo xung, khâu điều chế tạo xung chùm đều được tích hợp cùng vi điều khiển. Chỉ có khâu khuếch đại xung và xử lý tín hiệu đồng pha (xử lý hạ áp và xử lý tạo xung vuông đồng pha) là sử dụng mạch ngoài vi điều khiển.

* Ưu điểm:

- Hạn chế tối thiểu khâu xử lý mạch không tích hợp.

- Mềm hóa mạch cứng vì tất cả các khâu quan trọng đều được xử lý trong vi điều khiển.

- Dễ dàng thay đổi thiết kế và lập trình linh hoạt.

- Đơn giản, dễ thực hiện.

* Nhược điểm:

Mạch phải bắt các sườn xung để đưa vào bộ đếm (counter), đếm từ giá trị min đến max. Tức là giá trị của bộ đếm luôn cập nhật theo tần số lưới, nếu như lưới biến động. Tuy nhiên, góc (độ trễ mở van so với điểm mở tự nhiên) lại không thể cập nhật ngay, mà phải đợi chu kỳ xung tiếp theo. Hay nói cách khác, với việc trích mẫu như vậy, bao giờ phát xung cũng xảy ra sai số. Thậm chí với các nguồn biến động lớn, sai số là đáng kể và nguy hiểm đến điểu khiển toàn hệ thống.

Phương án 2:

Phương án 2 chủ trương tách rời khối mạch điều khiển ra khỏi vi điều khiển. Vi điều khiển chỉ xử lý khâu giao diện với người sử dụng, thực hiện thuật toán logic khởi động mềm/dừng mềm, đo dòng và ra quyết định sự cố cũng như quyết định bypass (chuyển mạch). Toàn bộ khâu xử lý dữ liệu đồng pha, tạo điện áp răng cưa, tạo xung trùm, so sánh và tạo xung, trộn xung và khuếch đại xung được tách riêng thành mạch điều khiển ngoài vi điều khiển.

* Ưu điểm:

- Rành mạch trong phân công nhiệm vụ tác động điều khiển.

- Khi tần số lưới biến động, thì tác động góc điều khiển   vẫn chính xác và tức thời không bị ảnh hưởng bởi chu kỳ cắt mẫu.

- Mạch điều khiển ít bị ảnh hưởng nhiễu và yêu cầu tác động rất nhanh của mạch điều khiển phát xung.

- Giảm bớt đầu vào/ra cho vi điều khiển, giúp đơn giản, tin cậy và giảm giá thành.

* Nhược điểm:

Nhược điểm lớn của phương án 2 là, khi tách rời mạch tạo xung, điều khiển các van bán dẫn công suất sẽ phải xử lý nhiều mạch cứng ngoài vi điều khiển. Điều này là phức tạp, tốn kém, giảm độ tin cậy.

Tuy nhiên, với sự phát triển rất mạnh mẽ của kỹ thuật điện tử, đặc biệt trong công nghệ bán dẫn, người ta đã chế tạo ra các IC tích hợp chuyên dụng để xử lý toàn bộ các khâu trong mạch điều khiển các van bán dẫn công suất (như IC TCA785). Như vậy, độ tin cậy, an toàn, phức tạp và tốn kém đã được loại trừ đáng kế. Đó cũng là lí do lựa chọn phương án 2 để trình bày thiết kế chi tiết.

Thiết kế mạch vi điều khiển

(Xem Hình 1 ,2,3)

Kết luận chung

Với kết quả nghiên cứu bước đầu, phần mạch cứng thiết kế vi điều khiển được mô phỏng trên phần mềm protelus và lập trình vi điều AVR trên phần mềm ICC. Thực hiện đổ chương trình và kiểm nghiệm các tác động mạch đều thỏa mãn các yêu cầu đặt ra của khởi động mềm. Qua đó, có thể dựng hệ thống điều khiển số sử dụng vi điều khiển AVR và thấy được tính khả thi của hệ thống điều khiến số trong thiết kế mạch khởi động mềm cho động cơ không đồng bộ ba pha.