Cỏckhối trong khối tương tự

Một phần của tài liệu Xây dựng hệ thống quản lý tiên tiến cho môi trường cảm thụ (Trang 45 - 51)

2.3. Chip PSOC và ứng dụng trong bài toỏn

2.3.2.Cỏckhối trong khối tương tự

Cỏc khối analog khả trỡnh được tập hợp thành những cột của 3 khối khả trỡnh. Số lượng cỏc cột này phụ thuộc vào họ của Psoc cú thể là 1, 2 hoặc cột. Từng cột lại cú cỏc đầu vào của bộ dồn kờnh.

Cấu trỳc bờn trong Psoc: Để cú thể hiểu rừ hơn về Psoc ta xột đến cấu trỳc bờn trong của Psoc, để tỡm hiểu vấn đề này khụng cú gỡ khú khăn vỡ phần mềm Psoc designer cú giao diện giỳp người sử dụng cú thể nhỡn thấy cỏc khối chức năng bờn trong Psoc. Điều này cú thể hiểu như sau cỏc khối tương tự và cỏc khối số được nằm tỏch biệt với nhau thành 2 phần tỏch biệt nhau, mỗi phần lại được nối với nhau tương tự như một mạch điện. Giả dụ nếu người sử dụng muốn sử dụng chức năng Counter thỡ chỉ việc hối chung vào bus của hệ thống đồng thời cung cấp xung clock… Cũn trong trường hợp khụng muốnsử dụng ta chỉ cần ngắt bỏ sự nối kết của khối chức năng đấy với hệ thống bus của chip. Bờn trong Psoc được hỗ trợ bằng đồ hoạ rất tiện cho việc ghộp nối cỏc khối. Phạm vi người sử dụng chỉ cần biết đến cỏch hoạt động của cỏc khối và việc ghộp nối thế nào cho đỳng, đõy cũng chớnh là tớnh mềm dẻo của Psoc so với cỏc họ vi điều khiển khỏc. Cũn việc lập trỡnh cho Psoc cũng khụng khỏc cỏc chip.

Trước hết là cỏc khối số khả trỡnh:

Chỳ ý một điểm: Cỏc bộ phận của khối số như timer, counter… được cấy bờn

trong cỏc khối khả trỡnh thỡ khụng được nối trực tiếp tới cỏc chõn input và output. Theo sơ đồ mụ tả hỡnh bờn dưới nhúm của 4 khối số khả trỡnh cho thấy: sự kết nối cỏc chõn được thiết lập bằng cỏch sử dụng cỏc dõy kết nối toàn cục, cỏc bộ dồn kờnh và cỏc dõy của khối khả trớnh số (hỡnh vẽ chỉ minh hoạ một nhúm gồm 4 khối số)

Nguyễn Quang Huy 44

Hỡnh 18: Cỏc khối s kh trỡnh trong Psoc

Nhận thấy trờn sơ đồ cú cỏc cột đỏnh số từ 0 đến 7 là GIO và GIE ở bờn trỏi sơ đồ, đõy chớnh là cỏc dõy nối toàn cục giành cho đầu vào, cỏc dõy này thiết lập sự kết nối giữa cỏc chõn và cỏc bộ dồn kờnh. Cỏc dõy này được chia làm hai nhúm là GIO và GIE , cỏc dõy GIO chỉ được phộp kết nối vào cỏc Port lẻ, vớ dụ như GIO_0 chỉ cú thể nối tới chõn số 0 của cỏc Port lẻ như P1[0],P3[0]… và cỏc GIE (giành cho Port chẵn )thỡ ngược lại

Và ở phớa trờn ta thấy một loạt cỏc dõy khối đầu vào (Input Block lines), việc kết nối giữa cỏc GIO hay GIE với dõy này thụng qua một bộ dồn kờnh Mux được thể hiện trờn hỡnh 3.9. Bộ dồn kờnh này chọn một trong cỏc dõy toàn cục và nối nú với dõy mang

tớn hiệu để dẫn nú tới cỏc khối số cần được nối.

Bờn trong cỏc khối số khả trỡnh ngưới sử dụng cú thể thể định cấu hỡnh cho cỏc thành phần như: timer, counter, PWM,… và cỏc thiết bị cho SPI, cổng hồng ngoại và

Nguyễn Quang Huy 45

UART. Quỏ trỡnh thiết đặt và kết nối rất đơn giản để hiểu nhưng trước hết người sử dụng cần phải hiểu hết cỏc chức năng và cỏch hoạt động của cỏc thàn phần này. Hõu hết cỏc thành phần như bộ đếm, PRS và cỏc bộ phỏt CRC cú thể được cất phần trong bất kỳ cỏc khối nào. Mặt khỏc , cỏc thành phần truyềnthụng như Rx, Tx, và SPI cú thể được đặt mặt phải của cỏc khối khả trỡnh.

Số lượng cần thiết cỏc khối mà được sử dụng cho cỏc thành phần khi cấu hỡnh như sau:

Số bit của cỏc bộ Counter, Timer và PWM Số lượng cỏc khối Cỏc thành phần

1 Counter 8bit , timer 8 bit , PWM 8 2 Counter 16 , timer 16 , PWM 16 , UART 3 Counter 24 , timer 24 , PWMDB 24

4 Counter 32 , timer 32

2.3.2.1 Tần số dao động của Psoc

Tớn hiệu tần số này được cần đến cho sự làm việc của cỏc thành phần số . Phụ thuộc vào tốc độ mong muốn nờn cú một vài khoảng giành cho sự lựa chọn này như sau :

• Cỏc tớn hiệu tần số nội bộ như VC1 , VC2 , VC3 , SYSCLKx2 , CPU_32.

• Và tận dụng luụn đầu ra của cỏc khối gần kề làm tần số hoạt động .

• Cỏc đường dõy quảng bỏ (Broadcast line) được dựng cho cỏc khối muốn cú cựng tốc độ .

• Input (RI) hay ouput (RO) của cỏc block line .

Cỏc tớn hiệu thụng dụng la VC1, VC2 và VC3 bởi vỡ nú cú cỏc giỏ trị khỏc nhau để người sử dụng lựa chọn cho thiết kế của mỡnh. Nếu cỏc tần số VC1, VC2, VC3 khụng thể cung cấp tần số danh định (do cỏc khoảng để lựa chọn tần số là cú giới hạn do vậy khụng thể tần số nào cũng dựng VC1, VC2 và VC3 được) khi đú ta cú thể tận dụng cỏc đầu ra của counter, timer hoặc PWM như là cỏc tần số thờm vào được đặt trước. Hỡnh vẽ phớa dưới sẽ chỉ cho chỳng ta biết cỏch nối một cỏch trực tiếp từ một đầu ra của một khối tạo dao động như Counter hay PWM tới một khối liền kề với nú. Thuận tiện hơn nữa là nếu tớn hiệu này được nối ngang qua một vài khối khỏc, thỡ việc kết nối sẽ đựoc thực hiện

Nguyễn Quang Huy 46

Ở hỡnh vẽ trờn đầu ra của PWM được nối tới dõy BC và cỏc khối khỏc cú thể sử dụng tần số bằng cỏch nối trục tiếp tới dõy BC này.

Tần số phỏt :

Cỏc tần số này rất cần thiết cho cỏc chức năng của khối CPU, như là cỏc khối khả trỡnh. Mỗi tành phần khả trỡnh đương nhiờn luụn cú những yờu cầu về tốc độ. Do vậy chip Psoc cú một hệ thống phỏt ra cỏc tớn hiệu tần số khỏc nhau và việc này được thực hiện bằng cỏch chọn cỏckhối đồ hoạ với thụng số thớch hợp. Sơđồ dưới sẽ chỉ cho ta thấy hai hệ thống độc lập với nhau cho việc phỏt ra những tớn hiệu như SYSCLK và SYSCLK 32k

.

• Trong đú SYSCLK là tớn hiệu xung nhịp chớnh bờn trong chip Psoc với tốc độ là 24Mhz. Nú được sử dụng để làm chuẩn cho cỏc hầu hết cỏc tớn hiệu

khỏc.

• SYSSCLKx2 là tớn hiệu xung nhịp cú gỏi trị gấp đụi tớn hiệu SYSCLK.

24V1 là tớn hiệu nhận được bằng cỏch chia tần số SYSCLK với thụng số cho

trước là N1 (cú giỏ trị từ 1 ữ 16). Như vậy 24V1 = SYSCLK/N1 và cú giỏ trị nhỏ nhất là 1.5Mhz (với N1 = 16) và lớn nhất 24Mhz (với N1 = 1).

24V2 lại là tớn hiệu cú được bằng cỏch chia tần số 24Mhz với cỏc giỏ trị là

N1*N2 (N1, N2 đều trong khoảng 1 ữ16). Như vậy 24V2 = SYSCLK/N1N2 và cú giỏ trị trong khoảng từ 93.75khz đến 24Mhz (N1 = N2 =1).

24V3 là tớn hiệu cú được bằng cỏch chia cỏc tớn hiệu tần số sau : 24V1,

24V2, SYSCLK, SYSCLKx2 với số bị chia N (N ∈[1…256])

CPU_CLK được sử dụng như một khối tần số CPU và cú ảnh hưởng trực

tiếp tới tốc độ thực hiện cỏc cõu lệnh. CPU_CLK cú 8 tần số bất kỳ trong khoảng 93.75Khz đến 24Mhz.

Sự lựa chọn tần số 24V1, 24V2, 24V3 và CPU_CLK được thực hiện rất là dễ dàng bằng cỏch đặt cỏc thụng số thớch hợp trong quỏ trỡnh Device Editor (đặt cấu hỡnh hoạt động cho chip) hoặc trong suốt quỏ trỡnh chạy bằn việc lựa chọn 3 bit thấp của thanh ghi OSCCR0.

Nguyễn Quang Huy 47

Hỡnh 19: Cỏc tớn hiệu bờn trong Psoc

2.3.2.2 Sự tiờu thụ năng lượng của Chip

Cỏc tớn hiệu tần số CPUCLK cú ảnh hưởng trực tiếp tới tốc độ thực thi cỏc lệnh của chip (do được nối trực tiếp bộ tạo xung nhịp của CPU). Nếu tăng gấp đụi tần số, quỏ trỡnh thực hiện chương trỡnh cũng tăng lờn xấp xỉ gấp đụi. Mặt khỏc tần số cao hơn khụng phải lỳc nào cũng cần thiết trong tất cả quỏ trỡnh thực hiện. Một sự bất lợi chớnh trong việc tần số tăng lờn đú là những hiệu quả khụng mong muốn trong việc tiờu thụ năng lượng , là một trong vấn đề chớnh trong trường hợp sử dụng nguồn pin hay ắc quy. Điểm bất lợi khỏc của tần số cao dễ bị ảnh hưởng của nhiễu điện từ ở xung quanh thiết bị. Do vậy chỳng ta cần phải lựa chọn một tần số thấp nhất mà thoả món những điều kiện nờu trờn. Tần số mặc định bờn trong chip Psoc là 3Mhz nờn cú sự chọn lựa hợp lý giữa tục độ và tiờu thụ.

Hầu hết cỏc họ vi điều khiển chỉ hoạt động một cỏch theo định kỳ và sẽ ở trạng thỏi khụng làm gỡ trong suốt thời gian nào đú (chẳng hạn đợi một ngắt nào đú xảy ra…). Do đú ta cú thể tiết kiệm được nguồn năng lượng cuang cấp cho chip bằng cỏch đưa vi điều khiển tới chế độ sleep (ngủ khụng làm gỡ) trong lỳc vi điều khiển khụng đúng vai trũ quan trọng nào trong hệ thống. Sở dĩ việc tiết kiệm cú thể đạt được là do tất cả cỏc tần số, loại trừ CPU32k và SLEEP là vẫn hoạt động, trong lỳc bộ vi xử lý dừng việc thực thi cỏc lệnh. Và vi điều khiển cú thể được kớch hoạt ngay lập tức từ chế độ sleep trở lại chế độ hoạt động bỡnh thường chỉ bằng reset hay một ngắt. Ngắt này cú thể được phỏt ra bởi sleep timer hoặc từ một vài khối số sử dụng tần số CPU_32k, cỏc ngắt từ cỏc chõn GPIO và cỏc cột tương tự cũng cú thể được sử dụng cho mục đớch đỏnh thức CPU. Sleep

Nguyễn Quang Huy 48

Timer đúng vai trũ như một bộ counter đặc biệt mà chức năng chớnh của nú là phỏt ra những ngắt định kỳ cú thể đỏnh thức CPU từ chế độ tiết kiệm năng lượng. Tần số ngắt của sleep timer trong phạm vi từ 1 đến 512Hz. Cần cú một loại ngắt tương ứng dựng để đỏnh thức (kớch hoạt) vi điều khiển từ chế độ sleep. Bắt đầu một trạng thỏi mới nghĩa là cỏc thanh ghi được cho cỏc giỏ trị hoạt động và chương trỡnh tiếp tục thực hiện những cụng việc của nú từ trạng thỏi ban đầu.

• Trong Psoc cú một chế độ đặc biệt đú là chế độ SMP (Switch Mode Pump)

Chế độ này được dựng như một nguồn cung cấp cho Psoc hoạt động.

Vậy SMP là như thế nào? Quan sỏt hỡnh sau, ta nhận thấy SMP hoạt động dựa trờn nguyờn lý biến đổi BOOSTDC/DC. Loại biến đổi này mang giỏ trị điện ỏp cao hơn điện ỏp của pin cung cấp (nguồn nuụi) (hỡnh ảnh minh hoạ cho thấy pin chỉ cần 1.5V). Để chế độ SMP cú thể hoạt động ngoài pin ta cần nối thờm diode, cuộn cảm và tụ điện. Khi hoạt động ở chế độ này chõn số 9 của Psoc cú thể kớch nguồn lờn đến điện ỏp mà Psoc cú thể hoạt động được (tuy nhiờn dũng lại hơi nhỏ do vậy khụng ứng dụng được trong cỏc bài toỏn lớn)

Hỡnh 20: Chếđộ SMP

Reset

Trong suốt quỏ trỡnh hoạt động của vi điều khiển, sự thay đổi hay bất ổn định của nguồn cung cấp cú thể xảy ra bất kỳ lỳc nào. Và điều này thật sự là nguy hiểm khi điện ỏp rơi ở dưới mức giới hạn cho phộp vỡ vi điều khiển sẽ bị những tỏc động khụng thể tiờn đoỏn trước được. Trong trường hợp phỏt hiện điện ỏp rơi vi điều khiển lập tức chuyển sang chế độ reset nguồn (Power on reset) và ở chế độ này đến khi điện ỏp trở lại ổn định trờn mức tới hạn quy định.

Nguyễn Quang Huy 49

Phần 3 Lựa chọn tớnh toỏn thiết kế

Nhưđó trỡnh bày trong phần tổng quan, nhiệm vụ chớnh của hệ thống Siam2 là thu thập cỏc thụng số của mụi trường và điều khiển cỏc thiết bị dõn dụng để tạo ra một mụi

trường thỏa món cho con người trong căn nhà của mỡnh. Chỳng ta cú thể sử dụng cỏc cụng nghệ khỏc nhau để thu thập thụng tin như sử dụng cụng nghệ Wifi, Bluetooth...

nhưng trong bài toỏn cụ thể mà ta cần giải quyết trong nội dung luận văn này đú là thu nhận sự thay đổi của mụi trường. Bởi thụng tin của mụi trường khụng thay đổi quỏ nhanh vỡ thế chỳng ta chỉ cần thu nhận thụng tin trong một khoảng thời gian nhấtđịnh, cỏch đều

nhau và khụng nhất thiết phải sử dụng phương phỏp truyền số liệu quỏ nhanh.

Mặt khỏc, trong quỏ trỡnh thu nhận và điều khiển khụng đũi hỏi tốc độ truyền cao. Chỳng ta cú thể đồng thời lựa chọn cả hai cụng nghệ Wifi và Bluetooth nhưng trong bài toỏn thu nhận nhiệtđộ mụi trường trong phạm vi luận văn này, chỳng ta chỉ cầnứng dụng

cụng nghệ Bluetooth.

Mụ hỡnh hệ thống gồm cú hai mođun chớnh: • Mođun thu thập số liệu và truyền tin • Mođun nhận số liệu

Để thử nghiệm hệ thống, tụi thiết kế phần thu nhận và đọc nhiệt độ mụi trường.

Do thụng số nhiệt độ của mụi trường khụng thay đổi quỏ nhanh nờn tụi ứng dụng cụng nghệ Bluetooth để truyền thụng tin giữa mođun thu nhận số liệu và mođun thu thập.

Ta cú thể phỏc qua hoạt động của hệ thống như sau: Số liệu nhiệtđộ được đo về

và gửi lờn mỏy tớnh (truyền khụng dõy, sử dụng cụng nghệ Bluetooth) đồng thời nú cũng được hiển thị trờn LCD ở mạchđo. Mặt khỏc, ta cũngđặt trờn mỏy tớnh chếđộđiều khiển

hệ thống. Khi nhiệt độ vượt ngưỡng cảnh bảo (ngưỡng này do ta đặt) thỡ mỏy tớnh tự động gửi lệnh điều khiển đúng ngắt cỏc thiết bị đốn, quạt trong phũng nhằm mục đớch điểu

chỉnh nhiệt độ trong phũng sao cho nhiệt độ đú luụn nằm trong khoảng nhiệt độ cho

phộp.

Một phần của tài liệu Xây dựng hệ thống quản lý tiên tiến cho môi trường cảm thụ (Trang 45 - 51)