1 NGHIÊNCỨUPHÁTTRIỂN CHIP CHUYÊNDỤNGTRÊNCÔNGNGHỆPSoC CHO HỆTHỐNGĐIỀUKHIỂNMÁYĐIÊÙHOÀNHIỆTĐỘ PGS TSKH Phạm Thượng Cát, KS Phan Minh Tân KS Chu Ngọc Liêm, KS Nguyễn Xuân Hoàng, KS Mai thị Phương Thảo Phòng CôngNghệ Tự Động Hoá. Viện CôngNghệThông Tin. Viện Khoa Học và CôngNghệ Việt Nam. Fax: +84-04-8363485 Tel: +84-04-8363484 email: ptcat@ioit.ncst.ac.vn Tóm tắt: Nội địa hoá sản phẩm, đẩy mạnh nền côngnghệ sản xuất trong nước là một yêu cầu tất yếu để hạ giá thành sản xuất, nâng cao chất lượng sản phẩm, nâng cao tính cạnh tranh của các sản phẩm Việt Nam trên thị trường trong nước cũng như quốc tế. Đây cũng là một trong những mục tiêu chính của nền công nghiệp nước ta hiện nay. Trong bối cảnh đó, lĩnh vực sản xuất máy lạnh cũng đang từng bước chuyển sang sản xuất nội địa toàn bộ các chi tiết của sản phẩm. Hiện nay, tỷ lệ nội địa hoá của máy lạnh Việt Nam vẫn còn thấp và nhất là vẫn phải nhập ngoại toàn bộ board điềukhiển cũng như các phụ kiện của nó. Đứng trước yêu cầu tăng tỉ lệ nội địa hoámáy lạnh và chủ động sản xuất, chúng tôi đã nghiêncứu chế tạo sản phẩm thay thế: Board điềukhiểnmáyđiềuhoànhiệt độ, bằng côngnghệ tạo chipthông minh PSoC. RESEARCH AND DEVELOPMENT OF A CUSTOMIZED CHIP USING PSoC TECHNOLOGY FOR AIR CONDITIONER CONTROL SYSTEM Prof.DSC. Pham Thuong Cat, Dipl.Eng. Phan Minh Tan. Dipl.Eng. Chu Ngoc Liem, Dipl.Eng. Nguyen Xuan Hoang, Dipl.Eng. Mai thi Phuong Thao. Department for Automation Technology, Institute of Infomation Technology. Viet Nam Academy of Science and Technology Fax: +84-04-8363485 Tel: +84-04-8363484 email: ptcat@ioit.ncst.ac.vn Abstract: Local-made production, stepping up manufacture technology is an indispensable requriment of national industry to reduce cost of production, improve quality of products, improve competitiveness of local products on domestic market also on internationnal market. This also is one of main targets of national industry, at this time. In the same case, air conditioner manufacture is also changing step by step in local-mading all part of air conditioner. And now, some parts of it were made in local but still need to increase the percentage of the local-made parts. Because, manufactorys have been not owned creating chip technology of control board in air conditioner, main board and spare part were imported. So that, we have researched and made the replacer: Control board for air conditioner, by PSoC technology. 1./ GIỚI THIỆU CHUNG. Nội địa hoá sản phẩm sản xuất tại Việt Nam là điều mà chúng ta đang tiến tới. Tuy nhiên bên cạnh đó vấn để tồn tại lớn nhất chính là vốn và công nghệ. Mục tiêu sản xuất với chi phí thấp, đồng thời làm chủ được côngnghệ cao để có được sự chủ động trong sản xuất đang được các cơ sở sản xuất quan tâm hàng đầu. Cũng với những mục tiêu như vậy, chúng tôi dùng vào côngnghệPSoC để thiết kế và chế tạo hệthốngđiềukhiểnchomáy lạnh. PSoC (Progamable System on Chip) là một côngnghệ tạo Chipđiềukhiểnthông minh với tính linh hoạt cao, chi phí côngnghệ phục vụ nghiêncứu và pháttriển ban đầu khá thấp, giá thành chip thấp, hỗ trợ kĩ thuật tốt với phần mềm pháttriển dễ dùng. Chính vì vậy, nếu làm chủ được côngnghệ này thì chúng ta có được các ưu điểm là có thể thu gọn kích thước sản phẩm, hạn chế các chipchuyêndụng phụ trợ. Do vậy, không những giá thành sản xuất được hạ xuống thấp, mà còn có thể đẩy nhanh quá trình pháttriển sản phẩm để đưa sản phẩm ra thị trường. Và tất nhiên, côngnghệ này sẽ là một công cụ hữu ích không chỉ cho các sản phẩm thay thế mà cả những sản phẩm mới theo ý tưởng sáng tạo của người pháttriển sản phẩm. 2./ CẤU TRÚC PHẦN CỨNG CỦA CHIPĐIỀUKHIỂNMÁYĐIỀUHOÀ MỘT CHIỀU. Hình 1 minh hoạ tổng quát về cấu trúc của một máyđiềuhoà nói chung. Đây chỉ là loại điềuhoà một chiều, vì vậy về cấu trúc điềukhiển là đơn giản hơn so với loại điềuhoà hai chiều. Ta có thể chỉ cần sử dụng một bo mạch điềukhiển là đủ cho cả hai block trong và ngoài phòng (dàn lạnh và dàn nóng). Hệthốngđiềukhiểnmáyđiềuhoà gồm board điềukhiển và bộ điềukhiển hồng ngoại từ xa cầm tay. Chip thay thế trên board điềukhiển được được thiết kế như sau: Các đầu vào của chipđiềukhiển gồm có: +Emergency Botton: tạo xung tín hiệu trêncổng vào mC, khởi động module Emergency trong trường hợp không có bộ điềukhiển từ xa. +Infared Receiver: đầu nhận tín hiệu điềukhiển từ bộ điềukhiển từ xa. 2 +Sensor 1 và Sensor 2: là các cảm biến nhiệtđộ và cảm biến điểm đông của môi trường không khí trong phòng. Các đầu ra của chipđiềukhiển gồm có: +Led display: đèn chỉ thị báo chế độ hoạt động của máy. +Buzzer: Loa tín hiệu, phát âm thanh khi nhận được lệnh bất kì. +Louver motor: động cơ đảo cánh gió, loại động cơ bước. +Fan motor: động cơ quạt gió, có thể thay đổi tốc độ. +Compessor motor: động cơ máy nén dàn nóng. Hai đầu vào cho sensor nhiệtđộ và điểm đông được biến đổi qua các cổng ADC, các đầu I/O còn lại đều dùng các cổng vào ra số thông thường Cấu trúc thiết kế trênchip thay thế: Hình 2 mô tả các tín hiệu của chip ĐKML được tạo ra trêncôngnghệPSoCcho bo mạch chính dùng thay thế cho board điềukhiểnmáyđiềuhoà VBH- CON9U-15C. Các port_x_x là những tài nguyên vào/ra chưa sử dụng. . Hình 1: Sơ đồ khối tổng quát Hình 2: Chip ĐKML được thiết kế trên nền chip trắng CY8C26443 của côngnghệPSoC 3 Cấu trúc và tài nguyên sử dụng trong chip ĐKML Trên cấu trúc này ta đã sử dụng cả tài nguyên số (diagital) và tài nguyên tương tự (analog). Trong đó, gồm hai ADC phục vụ cho các đầu đonhiệtđộ và điểm đông, hai ADC này sử dụng hết 4 khối số và 2 khối analog. Một đầu thu tín hiệu điềukhiển hồng ngoại của bộ điềukhiển cầm tay, sử dụng 3 khối số. Và một khối số được dùng làm đồng hồ xung nhịp cho hai ADC đonhiệtđộ và điểm đông. Các thông số cấu hình hoạt động của Chip: Analog Power SC On/Ref High CPU_Clock 12_MHz Ref Mux (Vcc/2)+/-(Vcc/2) Supply Voltage 5.0V SwitchModePump OFF Trip Voltage [LVD (SMP)] 4.64V (5.00V) Watchdog Enable Enable Hình 3: Cấu trúc thiết kế và tài nguyên sử dụng trong chip ĐKML Hình 4: Sơ đồ của chíp ĐKML 4 3./ CHU TRÌNH ĐIỀUKHIỂN VÀ CẤU TRÚC PHẦN MỀM . 3.1/ Chu trinh điềukhiểnnhiệtđộ phòng Đối tượng điềukhiển ở đây là nhiệtđộ phòng, với cơ cấu chấp hành chính là máyđiều hoà. Với một chiến lược điềukhiển thích hợp máy sẽ tác động để thay đổi được nhiệtđộ phòng theo mong muốn. Nhiệtđộ phòng là một đối tượng có độ quán tính khá lớn, dođó thuật điềukhiển cần thiết lưu ý đến độ trễ này. Sơ đồđiềukhiểntrên thực hiện một chu trình điềukhiển khép kín. Ban đầu chương trình sẽ kiểm tra nhiệtđộ phản hồi về của phòng thông qua sensor nhiệt độ. Nhiệtđộ này sẽ được so sánh với nhiệtđộ đặt ở đầu vào do người dùng thiết lập. Nếu nhiệtđộ phòng cao hơn nhiệtđộ đặt thì chu trình sẽ hoạt động tiếp tục theo thuật điềukhiển đã thiết lập. Nếu nhiệtđộ phòng thấp hơn nhiệtđộ đặt thì hệthống tạm dừng hoạt động để nhiệtđộ phòng tự nóng lên. Các lệnh điềukhiểnnhiệt độ, quạt gió, máy nén, động cơ bước đảo cánh gió được thực hiện đồng thời với chu trình điều chỉnh nhiệtđộ Trong chu trình hoạt động chương trình sẽ phải quét bộ đệm lệnh để kiểm tra nếu có lệnh điềukhiển mới từ bộ điềukhiển hồng ngoại. Quá trình này sẽ thực hiện ngay sau khi các thiết lập phần cứng cho chip, và là các lệnh đầu tiên của chu trình. Quá trình này sẽ cài đặt điểm đặt nhiệtđộ theo yêu cầu của người sử dụng cũng như các cài đặt cho bộ điềukhiển (các thông số của các ch ế độ trong thuật điều khiển). 2.2/ Cấu trúc phần mềm, sự phối ghép của các lệnh, module điềukhiển và phần cứng. Sơ đồ cấu trúc phần mềm (Hình 3) trên được xây dựng theo chức năng của máy. Các đầu vào tác động đến các Module chức năng tương ứng các lệnh trên bàn phím điềukhiển từ xa và trên mặt máy. Tại các module, lệnh được xử lí sau đó đưa các lệnh điềukhiển tới các thiết bị chấp hành và các module khác. Các Module chức năng có: +Power, Run mode, Fan mode, Louver mode, Timer, LED. Mỗi module đều có các chức năng cụ thể và được thể hiện trong khối, tương ứng các chức năng của nhà sản xuất. Các phím điềukhiển có: +Nút trên mặt máy: Run. +Nút trên bàn phím điều khiển: On/Off, Run mode, Speed, Oscillation, Economy, Mightiness, Sleep, Beforehand, Hour, Minute, Too warm, Too cool. Mỗi phím trên sẽ được mã hoá theo qui ước của người lập trình bằng một mã điềukhiển tương ứng. Khi bộ điềukhiển từ xa phát ra mã lệnh điềukhiển thì đầu thu hồng ngoại sẽ thu và giải mã tín hiệu đó để có được lệnh yêu cầu. Các lệnh sẽ được xử lí bằng những module khác nhau. Sau đó các module này sẽ đưa ra lệnh điềukhiểncho các cơ cấu chấp hành để có được sự tác động cần thiết vào môi trường. Sự phối hợp điềukhiển của các module sẽ tạo ra những thay đổi theo yêu cầu của người sử dụng. Lệnh điềukhiển tác động tương ứng lên các module chức năng và các cổng đầu ra điềukhiển của PSoC: 2.2.a./ Nút lệnh trên mặt máy: +Run (emermgency): Đầu vào của Emergency Botton là cổng P2[0] (được thể hiện trên hình 2), khi nhấn nút thì trạng thái trêncổng sẽ được đọc vào. Nhấn lần 1 là ON, lần 2 là OFF. Khi nhận được lệnh ON, trước tiên các module phần cứng sẽ được khởi tạo các thiết lập hoạt động cho PsoC. Cổng P1[4] sẽ bật LED báo trạng thái nguồn lên (hạ xuống mức thấp để bật, do cấu tạo của phần cứng). Cánh đảo gió từ vị trí đóng kín được đưa về vị trí mở hết bằng động cơ đảo cánh. Các tham số truyền cho các khối chức năng Run Mode là Auto, Fan Mode là Auto, Louver Mode là Auto) nhiệtđộ mặc định được đặt là 24 0 C. Dựa trên tín hiệu vào từ 2 sensor và so sánh với nhiệtdộ mặc định, động cơ dàn nóng được điềukhiển qua 1 relay, relay này được điềukhiểnthông qua cổng P0[3] theo chế độ Auto, tốc độ quạt gió sẽ được điềukhiển qua 3 relay, 3 relay này được điềukhiểntrên 3 cổng P0[0], P0[1],P0[3] theo chế độ Auto. Động cơ đảo cánh gió được điềukhiển qua các cổng P1[0], P1[1], P1[2], P1[3] cũng theo chế độ Auto. Các động cơ dàn nóng và quạt gió được Hình 5: Sơ đồđiềukhiển 5 điềukhiểnthông qua relay với trạng thái On khi các cổngđiềukhiển đưa lên mức cao, Off khi các cổng này ở mức thấp. Đối với động cơ đảo cánh gió là loại động cơ bước thì động cơ được điềukhiển theo phương pháp Half Stepping, phương pháp điềukhiển này chođộ bền vững cao, với momen lớn hơn và mịn hơn so với hai phương pháp còn lại là Wave Stepping và Full Stepping. Khi nhận được lệnh Off, các module phần cứng trong PSoC sẽ ngừng hoạt động. Các cổngđiềukhiển các động cơ bằng relay sẽ trả về mức thấp để dừng động cơ, các cổngđiềukhiển động cơ đảo cánh cũng trả về mức thấp toàn bộ để tránh tổn thất năng lượng và gây nóng động cơ, cổngđiềukhiển đèn LED báo nguồn đưa về mức cao để tắt đèn. Cánh đảo gió sẽ trở về vị trí đóng hoàn toàn. 2.2.b./ Nút lệnh trên bộ điềukhiển từ xa: a. On/Off: Chức năng là bật và tắt nguồn, có LED báo trạng thái. Các khối phần cứng được khởi tạo hoạt động, tham số của các module điềukhiển được giữ nguyên từ lần hoạt động trước. Các cổngđiềukhiển động cơ, LED sẽ phục hồi trạng thái theo điềukhiển của các module. Lệnh Off sẽ ngừng các khối phần cứng PSoC trước, sau đó tất cả các cổngđiềukhiển động cơ sẽ hạ xuống mức thấp để tắt động cơ hoàn toàn, cổngđiềukhiển LED sẽ nâng lên mức cao để tắt đèn. b. Run mode: Dùng để chọn chế độ hoạt động của máy Run Mode xác định các bộ tham số đặt trước cho hai module Fan Mode và Louver Mode, tương ứng với các chế độ được chọn. Đồng thời sẽ trực tiếp điềukhiển hoạt động của động cơ nén dàn nóng. Mỗi chế độ này sẽ có một phương án điều khiển, mỗi phương án điềukhiển dựa trên cơ sở sự kết hợp điềukhiển của cả ba đối tượng: cường độ bơm nhiệt (dàn nóng), tốc độ tản nhiệt (quạt gió), và mức độ lan toả của luồng nhiệt (đảo cánh). Như vậy cơ cấu chấp hành ở đây cuối cùng vẫn là các động cơ. +Auto mode: dàn nóng bật P0[2] = 1, quạt gió chạy ở tốc độ thấp nhất P0[0] = 1, động cơ đảo cánh hoạt động ở chế độ đã định do Louver mode điều khiển. Hệthống hoạt động theo chu kì 15 phút chạy, 3 phút nghỉ (cắt toàn bộ động cơ). +Cool mode: Nhiệtđộ sẽ được điều chỉnh nằm trong khoảng 18-30 0 C (tuỳ theo nhiêtđộ đặt của người sử dụng), với phương thức hoạt động là làm lạnh liên tục P0[2] = 1, quạt gió và cánh đảo hoạt động theo điềukhiển của người dùng. +Dry mode: ở chế độ này quạt gió và cánh đảo chạy theo thông số đặt trước. Dàn nóng bật P0[2] = 1. Toàn bộ hệthống làm lạnh 15 phút, nghỉ 5 phút trong chu kì đầu tiên, sau đó hoạt động theo chu kì 4 phút chạy và 4 phút dừng. +Fan mode: Trong chế độ này chỉ có quạt hoạt động ở chế độ đã chọn trước, tốc độdocổng P0[0], P0[1] hoặc P0[3] xác định. c. Too Warm, Too Cool: hai lệnh này dùng để thiết lập lại nhiệtđộ đặt đã được thiết lập trong module Run Mode. Nhiệtđộ này được dùng làm cơ sở so sánh với nhiệtđộ phòng, từ đó mới đưa ra quyết định hệthống sẽ tiếp tục hoạt động hay tạm dừng để đợi sự tăng nhiệt trở lại của môi trường d. Speed: Lệnh này sẽ đặt các chế độ hoạt động cho Fan Mode. Các chế độ này được điềukhiểnthông qua các relay điềukhiển động cơ. Động cơ quạt gió được điềukhiển tốc độ 3 cấp, thông qua việc thay đổi số vòng của cuộn dây rotor cũng theo 3 cấp, việc này được thực hiện bởi 3 relay. Ba relay này sẽ trực tiếp được điềukhiển bởi module Fan Mode. +Auto mode: Tại chế độ này quạt gió sẽ điều chỉnh tốc độ theo chu kì thời gian đặt sẵn. 10 phút chạy ở tốc độ cao (P0[3] = 1), 10 phút ở tốc độ trung bình (P0[1] = 1), và 10 phút ở tốc độ thấp (P0[0] = 1). +High mode: Quạt chạy tốc độ cao, P0[3] = 1. +Medium mode: Quạt chạy tốc độ trung bình, P0[1] = 1. +Low mode: Quạt chạy tốc độ thấp, P0[0] = 1. Các chân điềukhiển được thể hiện rất cụ thể trên hình 2. AUTO - COOL - DRY - FAN AUTO - HIGH - MEDIUM - LOW 6 e. Osicillation: Lệnh này xác định chế độ hoạt động của Louver Mode Module này sẽ điềukhiển trực tiếp động cơ louver, loại stepper thông qua các cổng P1[0], P1[1], P1[2], P1[3]. Ví dụ: khoảng cách từ góc mở nhỏ nhất tới góc mở lớn nhất của cánh đảo gió là 10 000 vòng: + Auto mode: cánh đảo xuất phát từ góc nhỏ nhất thì sẽ đảo lên 4000 vòng, xuống 2000 vòng, lên tiếp 4000 ngàn vòng xuống 2000 vòng qua 5 chu kì cánh đảo mở hết sẽ thực hiện quá trình xuống cũng tương tự như vậy. Tốc độ động cơ được điều chỉnh ở tốc độ trung bình. Động cơ docổng P1[0], P1[1], P1[2], P1[3] điều khiển. + Continuous mode: Chế độ này sẽ cho động cơ đảo lên hết 10000 vòng, sau đó xuống hết 10000 vòng và lặp lại. Tốc độ động cơ được điều chỉnh ở mức cao trong chế độ này. +Stop: Cánh đảo sẽ dừng lập tức trong trường hợp này, khi lần hoạt động tiếp theo được kích hoạt thì đưa động cơ trở về vị trí mở hết hoặc đóng hết để bắt đầu. Trong quá trình đóng và mở cánh gió khi khởi động On/Off, tuỳ theo độ mở cơ khí có thể qui ra số vòng quay cần thực hiện của động cơ để điềukhiển quá trình này tương tự như các quá trình khác. f. Economy: Đưa máy về chế độ hoạt động tiết kiệm nhất, khi nhận được lệnh này tham số của các khối điềukhiển sẽ được thiết lập theo chế độ tiết kiệm năng lượng. LED economy (Led xanh) bật lên (P1[5] = 0). Quạt chạy tốc độ thấp (P0[0] = 1), dàn nóng bật (P0[2] = 1), cánh đảo chạy theo chế độ định sẵn. Toàn bộ động cơ hoạt động theo chu kì 15 phút chạy, 5 phút dừng. g. Mightiness: Máy được đưa vào chế độ làm lạnh hết công suất. Các module được thiết lập ở chế độ tiêu thụ tối đa năng lượng (high power). Dàn nóng bật liên tục (P0[2]=1), quạt gió chạy tốc độ cao (P0[3]=1), cánh đảo gió chạy ở chế độ đặt trước. h. Sleep: Cài đặt giờ tắt máy, lệnh này sẽ đưa tham số vào thiết lập cho khối Timer để đếm ngược thời gian từ giá trị đặt về 0, sau đó truyền lệnh Off cho khối Power. Các giá trị thiết lập trước gồm có: (1 hour, 2hour………., 10 hour - Off). i. Beforehand: Lệnh cài đặt giờ mở máy, tạo thiết lập cho khối Timer với chức năng chuyển lệnh On ra khối Power. Lệnh này kết hợp với hai nút Hour và Minute để thiết lập giờ mở máy theo thời gian hiện thực của đồng hồ. Khối Timer sẽ qui đổi thành khoảng thời gian và đếm ngược đến 0, sau đó sẽ gửi lệnh On cho khối Power. Ghi chú: Tất cả các lệnh từ mặt máy hay bàn điềukhiển đều gọi tới module phát âm thanh buzzer trêncổng P0[4], cổng này phát chuỗi xung tần số 4 kHz để kích hoạt loa tín hiệu. AUTO - CONTINUOUS - STOP Hình 6: Giao diện điềukhiển của động cơ bước và chip ĐKML 7 3. KẾT LUẬN. Trong bài viết này, vấn đề ứng dụngcôngnghệ nhằm nâng cao tỉ lệ nội địa hoá sản phẩm là vấn đề được đặt lên hàng đầu. Cũng như vậy, ứng dụng của côngnghệ mới để hạ giá thành sản xuất là điểm mấu chốt được đưa ra. Qua đây ta có thể thấy tiềm năng ứng dụng của côngnghệ PSoC là rất lớn, mà đây chỉ là một ví dụ. Ngoài ra côngnghệPSoC còn có thể áp dụng vào nhiều hệthống nhúng khác nhau và trong nhiều lĩnh vực khác nữa. Trong ứng dụng này vấn đề được giải quyết chưa thực sự triệt để, tuy nhiên để tiếp tục pháttriển nhằm hoàn thiện sản phẩm, và mở rộng lĩnh vực ứng dụng thì đây là một côngnghệ đầy triển vọng. . TÀILIỆU THAM KHẢO. [1] Air Conditioner (Mitsubishi Electric Semiconductor Application Engineering Corporation, March,2001) [2] Stepper motor control ( Zillul Haque, MITSUBISHI ELECTRIC, 14/08/01 ). [3] Stepper Motor Control with an Microcontroller (By Bob King and Edgar Saenz, MOTOROLA SEMICONDUCTOR ) [4] Device Data Sheet for PSoC™ (Cypress MicroSystems Inc, Aug 18 2003) [5] PSoC™ (IDE) Designer Integrated Development Environment. (Cypress MicroSystems Inc, Dec 8 2003) [6] PSoC™ (IDE) Designer C Language Compiler. (Cypress MicroSystems Inc, June 17 2003) [7] PSoC™ (IDE) Designer Assembly Language. (Cypress MicroSystems Inc, June 20 2003) . 1 NGHIÊN CỨU PHÁT TRIỂN CHIP CHUYÊN DỤNG TRÊN CÔNG NGHỆ PSoC CHO HỆ THỐNG ĐIỀU KHIỂN MÁY ĐIÊÙ HOÀ NHIỆT ĐỘ PGS TSKH Phạm Thượng Cát,. dùng vào công nghệ PSoC để thiết kế và chế tạo hệ thống điều khiển cho máy lạnh. PSoC (Progamable System on Chip) là một công nghệ tạo Chip điều khiển thông