Truyền thụng qua cổng RS-232 là kiểu truyền thụng phổ biến nhất khi sử
dụng vi điều khiển giao tiếp với thiết bị ngoại vi. RS-232 cổng truyền nối tiếp khụng đồng bộ. Phương phỏp truyền theo từng bit nối tiếp này cú thể chia ra thành hai phần : cỏch mà cỏc byte dữ liệu ban đầu được phõn chia dữ liệu thành dạng nối tiếp để truyền và cỏch mà cỏc dữ liệu nối tiếp này được truyền theo cỏch vật lý trờn cỏc dõy dẫn.
Mỏy tớnh PC cung cấp 2 cổng nối tiếp :COM1 và COM2. Cỏc cổng này giao tiếp theo tiờu chuẩn RS232. Cổng này truyền dữ liệu dưới dạng nối tiếp theo một tốc độ do người lập trỡnh quy định( thường là 1200; 2400; 4800; 9600 bps; v…v). Loại truyền này cú khả năng dựng cho những khoảng cỏch lớn. Cổng nối tiếp chuẩn RS232 khụng phải là một hệ thống bus, do đú nú cho phộp dễ dàng tạo ra liờn kết dưới hỡnh thức điểm giữa hai mỏy cần trao đổi thụng tin với nhau. Chiều dài dữ liệu truyền đi cú thể là 7 hoặc 8 bit, và kốm theo cỏc bit start, stop, parity để tạo thành một khung truyền ( frame). Do việc truyền dữ liệu là nối tiếp nờn tốc độ truyền bị hạn chế do đú nú thường khụng được sử dụng trong những ứng dụng cần tốc độ truyền cao.
Chuẩn giao tiếp giữa ECU và PC ta lựa chọn sử dụng là chuẩn RS232. Khung truyền dữ liệu như sau:
Start Bit D0 D1 D2 D3 D4 D5 D6 D7 Parity bit Stop bit
Địa chỉ cơ bản của cổng nối tiếp COM1 là 3F8h Địa chỉ cơ bản của cổng nối tiếp COM2 là 2F8h
Việc truyền dữ liệu xảy ra trờn 2 đường dẫn qua chõn ra TxD, gửi dữ liệu của nú đến thiết bị khỏc. Trong khi đú dữ liệu mà mỏy tớnh nhận được dẫn đến chõn RxD, cỏc tớn hiệu khỏc đúng vai trũ như tớn hiệu hỗ trợ khi trao đổi thụng tin và vỡ thế khụng phải trong mọi ứng dụng đều dựng đến.
Mức tớn hiệu trờn chõn ra RxD tựy thuộc vào đường dẫn TxD và thụng tin thường nằm trong khoảng -12V….+12V cỏc bit dữ liệu được đảo ngược lại. Mức điện ỏp ở mức cao nằm trong khoảng -3V và -12V và mức thấp nằm trong khoảng từ +3V và +12V. Trạng thỏi tĩnh trờn đường dẫn cú mức điện ỏp
-12V. Bằng tốc độ Baud ta thiết lập tốc độ truyền dữ liệu cỏc giỏ trị thụng thường là : 2400; 4800; 9600; và 19200 baud…Ký hiệu baud là số lượng bit truyền trong 1s.
Bảng 1: Cỏc tớn hiệu của cỏc chõn đầu nối DB- 9 trờn mỏy tớnh PC.
Cũn một vấn đề nữa là khuụn mẫu(Format) truyền dữ liệu cần phải được thiết lập như nhau cả bờn gửi cũng như bờn nhận cỏc thụng số truyền cú thể được thiết lập trờn mỏy tớnh PC bằng cỏc cõu lệnh trờn DOS. Ngày nay Windows cũng cú cỏc chương trỡnh riờng để sử dụng, khi đú cỏc thụng số truyền dữ liệu như: tốc độ baud, số bit dữ liệu, số bit dừng, bit chẵn lẻ (parity) cú thể được thiết lập một cỏch đơn giản.
Cổng nối tiếp của vi điều khiển khụng thể ghộp nối trực tiếp với cổng nối tiếp của PC. Lý do là cỏc tớn hiệu trờn đường truyền RS-232 là tớn hiệu hai cực cú biờn độ nằm trong khoảng +12V đến -12V, trong khi vi điều khiển ATMEGA8535 chỉ cú thể xử lý cỏc tớn hiệu cú mức tớn hiệu tương thớch TTL( nếu nuụi bằng nguồn một chiều 5V). Thụng thường thỡ tớn hiệu trờn đường truyền RS-232 được lấy đảo. Điều đú cú nghĩa là khi mỏy tớnh PC muốn 1 mức logic “0” thỡ điện ỏp trờn đường truyền là -12V. Như vậy để tương thớch mức logic và điện ỏp giữa PC và vi điều khiển thỡ việc trang bị một bộ nhận và đệm đường truyền RS-232 là cần thiết. Bộ nhận và đệm đường truyến RS- 232 được dựng phổ biến nhất là loại MAX232 của cụng ty Maxim…
Hỡnh 3.8. Mạch giao tiếp với mỏy tớnh.
Vi mạch này nhận mức RS-232 đó được gửi tới từ mỏy tớnh và biến đổi tớn hiệu này thành tớn hiệu sao cho tương thớch với vi điều khiển ATMEGA8535 và nú cũng thực hiện ngược lại là biến đổi tớn hiệu của vi điều khiển thành mức +12V, -12V để cho phự hợp với hoạt động của mỏy tớnh. Giao tiếp theo cỏch này, khoảng cỏch từ mỏy tớnh đến thiết bị ngoại vi cú thể đạt tới trờn 20m
Ưu điểm của giao tiếp này là cú khả năng thiết lập tốc độ truyền thụng. Khi cú dữ liệu từ mỏy tớnh được gửi đến vi điều khiển ATMEGA8535 qua cổng COM thỡ dữ liệu này sẽ được đưa vào từng bit( nối tiếp) vào thanh ghi của UART.
Chương trỡnh truyền thụng giao tiếp giữa PC và vi điều khiển được viết bằng delphi với những nhiệm vụ chớnh sau:
- Nhận dữ liệu từ vi điều khiển để hiển thị cỏc thụng số làm việc của động cơ như tốc độ, ỏp suất đường nạp, nhiệt độ động cơ, vị trớ bướm ga…
- Truyền dữ liệu từ mỏy tớnh xuống trung tõm xử lý( ATMEGA 8535) để điều chỉnh cỏc thụng số như gúc đỏnh lửa sớm, lượng nhiờn liệu phun…
Chương 4 : XÂY DỰNG THUẬT TOÁN ĐIỀU KHIỂN 4.1. Phõn tớch quỏ trỡnh xử lý tớn hiệu vào của ECU
Ta đó biết vi xử lý chỉ làm việc với tớn hiệu số vỡ vậy cỏc tớn hiệu từ cỏc cảm biến khi đưa vào ECU đều phải được chuyển đổi sang tớn hiệu số trước khi đưa vào vi xử lý. Cỏc tớn hiệu đưa vào ECU bao gồm tớn hiệu tương tự (ANALOG), tớn hiệu xung, và tớn hiệu dạng on/off. Dưới đõy ta sẽ xột riờng từng dạng tớn hiệu.
4.1.1. Chuyển đổi tương tự – số (A/D)
u u=f(t) t t i i=g(t) Hỡnh 4.1: Dạng tớn hiệu tương tự.
Tớn hiệu tương tự (analog) thường là điện thế hay dũng điện cú dạng biến thiờn liờn tục theo thời gian như biểu diễn ở hỡnh 4.1. Thụng tin mà cỏc tớn hiệu tương tự muốn truyền đạt là biờn độ của nú. Biờn độ này là một hàm của thời gian.
Tuỳ theo dạng của f và g mà ta cú thể kết luận được về bản chất của tớn hiệu u, i núi trờn.
Khỏc với tớn hiệu tương tự, tớn hiệu số (digital) chứa thụng tin ở vị trớ cỏc xung hay sự thay đổi đột ngột của biờn độ (so với tớn hiệu thời gian chuẩn) cũn trị số tuyệt đối của biờn độ xung thỡ khụng quan trọng.
Như vậy, bản chất của hai loại tớn hiệu tương tự và số là khỏc nhau. Tớn hiệu tương tự thường gặp trong thực tế vỡ dễ tạo ra, hơn nữa tớnh chất liờn tục
theo thời gian của nú phự hợp với cỏc hiện tượng vật lý thụng thường. Cũn tớn hiệu số thỡ chỉ xuất hiện trong cỏc thiết bị số và thường được dựng như một hỡnh thức trung gian thuận tiện cho việc đo lường và xử lý tớn hiệu. Do đú, cần phải cú cỏc mạch trung gian để chuyển đổi tớn hiệu dạng tương tự sang số và ngược lại.
Trong cỏc tớn hiệu vào ECU thỡ tớn hiệu tương tự bao gồm tớn hiệu ỏp suất đường ống nạp, tớn hiệu nhiệt độ nước và nhiệt độ khụng khớ nạp, tớn hiệu vị trớ bướm ga, tớn hiệu lambda, tớn hiệu điện ỏp cung cấp.
Như phần phõn tớch tớn hiệu cảm biến ỏp suất đường ống nạp đó trỡnh bày, ở đõy ta phải xột đến vấn đề về độ chớnh xỏc của mạch chuyển đổi tương tự – số.
a. Sai số tĩnh
Khi thực hiện chuyển đổi cỏc tớn hiệu tương tự thành cỏc tớn hiệu số với số bit hữu hạn thường xuất hiện sai số hệ thống. Cỏc sai số này được gọi là sai số lượng tử. Sai số này xuất phỏt từ cỏc tạp õm lượng tử xuất hiện ở cỏc mạch ADC. Để giảm nhỏ tạp õm lượng tử thỡ ta phải tăng số bớt của mạch ADC lờn.
Uvào U
ADC
Hỡnh 4.2: Sai số do số bit hạn chế.
Bờn cạnh sai số hệ thống do lượng tử hoỏ cũn cú sai số cũng đỏng kể do kết cấu của mạch gõy ra. Nếu cỏc điểm giữa của cỏc bậc trờn đường gấp khỳc vẽ ở hỡnh 4.2 được nối liền với nhau thỡ ta được một đường thẳng với một hệ số gúc nhất định xuất phỏt từ gốc toạ độ (đường nột đứt). Đối với cỏc mạch ADC thực tế, đường thẳng này khụng xuất phỏt từ gốc toạ độ, ngoài ra đường nối cỏc điểm giữa của cỏc bậc trờn đường gấp khỳc khụng phải là đường thẳng mà là một đường góy.
b. Sai số động
Khi sử dụng ADC trong cỏc mạch xử lý tớn hiệu, do tớn hiệu đầu vào liờn tục biến động vỡ vậy phải tiến hành lấy mẫu tớn hiệu qua cỏc khoảng thời gian bằng nhau, gọi là chu kỳ lấy mẫu. Cỏc dữ liệu thu được sau đú sẽ chuyển sang số nhờ mạch ADC. Để cú thể phục hồi được chớnh xỏc tớn hiệu tương tự thỡ việc lấy mẫu cần phải thoả món điều kiện là tần số lấy mẫu ớt nhất phải lớn hơn hai lần tần số lớn nhất của tớn hiệu. Điều kiện này luụn được thoả món với cỏc tớn hiệu nhiệt độ nước, nhiệt độ khớ nạp, vị trớ bướm ga, điện ỏp cấp. Vấn đề đặt ra là đảm bảo chớnh xỏc đối với tớn hiệu ỏp suất đường ống nạp và tớn hiệu lambda khi mà biờn độ của tớn hiệu này luụn luụn thay đổi.
c. Cỏc yếu tố ảnh hưởng đến độ chớnh xỏc của ADC.
Chớnh khoảng chuyển tiếp của tớn hiệu vào là một yếu tố làm giảm độ chớnh xỏc bởi vỡ hai tớn hiệu vào phải khỏc nhau một lượng nào đú thỡ điện thế ra của mạch so sỏnh mới cú sự chuyển trạng thỏi. Ngoài ra, khoảng chuyển tiếp này lại thay đổi theo trị số tuyệt đối của điện thế vào tức là ứng với mỗi biờn độ ta cần cú một khoảng chuyển tiếp riờng, vỡ thế mà xảy ra hiện tượng khụng tuyến tớnh trong phộp so sỏnh. Tuỳ theo sự thiết kế của mạch so sỏnh mà bề rộng chuyển tiếp cũn cú thay đổi ớt nhiều theo nhiệt độ. Ngoài cỏc điểm trờn độ chớnh xỏc của mạch ADC cũng cũn bị ảnh hưởng bởi độ ổn định của mạch dao động chuẩn và thời gian giao hoỏn của cỏc cổng logic.
4.1.2. Chuyển đổi xung – số
Cũng như tớn hiệu tương tự, tớn hiệu xung cũng cần phải được chuyển đổi thành tớn hiệu số trước khi đưa vào vi xử lý. Dạng thụng tin mà tớn hiệu xung muốn truyền là tần số xung hay số lần xuất hiện xung dương trong một đơn vị thời gian.
tần số cao
Hỡnh 4.3: Dạng tớn hiệu xung từ cảm biến đưa tớn hiệu dạng. xung
Mạch chuyển đổi xung – số thực chất là mạch đếm số lần xuất hiện xung dương trong một khoảng thời gian và giỏ trị đếm được biểu thị bằng giỏ trị số. Trong ECU mạch này được sử dụng để xỏc định tốc độ động cơ bằng việc đếm số xung NE.
Sai số của mạch chuyển đổi thường rất hay xuất hiện thụng thường do nguồn xung khụng ổn định vỡ bị nhiễu bởi cỏc xung bờn ngoài. Thờm nữa sai số sẽ xuất hiện nếu như xung nhịp tạo thời gian cho mạch đếm khụng ổn định cũng là một nguyờn nhõn gõy sai số.
4.1.3. Chuyển đổi từ tớn hiệu on/off sang tớn hiệu số.
Tớn hiệu ON/OFF chớnh là những tớn hiệu từ cỏc cụng tắc điều khiển vớ dụ như tớn hiệu bật điều hoà nhiệt độ, tớn hiệu đỏnh tay lỏi tại chỗ, tớn hiệu từ cụng tắc khụng tải… Để bộ vi xử lý xỏc định được tớn hiệu nào xuất hiện thường cú nhiều cỏch, hoặc là tương ứng với mỗi tớn hiệu on/off là một giỏ trị số tương ứng bỏo về ECU hoặc ECU sử dụng biện phỏp quột vũng lần lượt từng tớn hiệu vào.
4.2. Phõn tớch quỏ trỡnh điều khiển ra của ECU
Cỏc cơ cấu chấp hành do ECU điều khiển bao gồm vũi phun chớnh, IC đỏnh lửa, van khụng tải… Cỏc cơ cấu này chỉ làm việc được với tớn hiệu xung, vỡ thế cần phải chuyển đổi từ tớn hiệu số thành tớn hiệu xung.
4.2.1. Cơ sở điều khiển vũi phun
Việc thay đổi lượng nhiờn liệu phun được thay đổi bằng độ rộng xung điều
khiển vũi phun cũn thời điểm phun được điều khiển bằng tớn hiệu thời điểm G Ở đõy ta quan tõm chủ yếu đến biện phỏp thay đổi độ rộng xung phun.
Biện phỏp thay đổi độ rộng ở đõy sử dụng mạch đếm lập trỡnh tức là giỏ trị số của lượng nhiờn liệu phun là bao nhiờu thỡ mạch đếm xung nhịp sẽ đếm lờn bấy nhiờu. Khi bắt đầu đếm cũng là khi nõng xung điều khiển phun và khi giỏ trị đếm bằng giỏ trị điều khiển ra cũng là lỳc hạ mức xung điều khiển phun xuống. Hỡnh 4.4 là minh hoạ của quỏ trỡnh điều khiển phun.
xung phun xung nhịp xung điều khiển phun
Hỡnh 4.4: Quỏ trỡnh điều khiển phun của ECU.
Vớ dụ giỏ trị số điều khiển phun do vi xử lý tớnh toỏn là 36 thỡ khi xuất hiện xung điều khiển phun mạch đếm sẽ bắt đầu đếm xung nhịp đồng thời nõng mức của xung phun lờn cao, vũi phun bắt đầu mở. Khi giỏ trị đếm xung đủ 36 thỡ mạch đếm sẽ hạ mức xung phun xuống tương ứng ngừng phun và đồng thời ngừng đếm chờ xung điều khiển phun tiếp theo.
4.2.2. Cơ sở điều khiển đỏnh lửa
Khỏc với điều khiển phun xăng, ở đõy do luụn luụn phải đảm bảo gúc ngấm điện cho bụbin là hằng số vỡ thế thời điểm bắt đầu cấp điện cho bụbin khụng phải từ lỳc xuất hiện xung thời điểm G mà phải xuất hiện sớm hơn xung thời điểm nhằm đảm bảo gúc ngấm điện là đủ cho bụbin và độ mở sớm hơn xung thời điểm này phải được thay đổi theo số vũng quay nhằm đảm bảo gúc ngấm điện luụn luụn giữ ổn định.
Hỡnh 4.5 minh hoạ cho quỏ trỡnh điều khiển đỏnh lửa.
Từ hỡnh 4.5 ta nhận thấy xung thời điểm G luụn luụn xuất hiện trước điểm chết trờn (ĐCT) từ 450 đến 500. Khi xung G xuất hiện thỡ xung IGT đó xuất hiện từ trước đú. Khoảng thời gian từ thời điểm bắt đầu cấp điện cho bụbin đến thời điểm bắt đầu tớnh toỏn gúc đỏnh lửa sớm t1 phụ thuộc số vũng quay
động cơ. Khoảng thời gian này được tớnh toỏn sao cho tổng hai khoảng thời gian t3 = t1 + t2 là hằng số với mọi tốc độ động cơ và với mọi gúc đỏnh lửa.
Để thuận tiện cho việc đỏnh lửa đối với động cơ xe mỏy sẽ tiến hành đỏnh lửa 2 lần trong một chu trỡnh. Mỗi khi cú xung điều khiển đỏnh lửa(G) ECU sẽ tiến hành tớnh toỏn để đưa ra gúc đỏnh lửa sớm tối ưu của lần đỏnh lửa tiếp theo.
lửa (IGT)
sớm
360
º
ºgúc quay trục khuỷu
Thời điểm đỏnh lửa t 1 xung đỏnh Thời điểm bắt đầu cấp điện cho bụbin Thời
điểm bắt đầu tớnh toỏn gúc đỏnh lửa t 3 t 2 xung nhịp xung điều khiển đỏnh lửa (G) 1 0 gúc quay trục khuỷu ĐCT
Hỡnh 4.5. Quỏ trỡnh điều khiển đỏnh lửa của ECU.
4.2.3. Điều khiển van khụng tải
Thụng thường cỏc động cơ sử dụng van khụng tải kiểu điện từ đúng mở theo xung. Để điều khiển van này ta phải thay đổi độ rộng xung dương hoặc xung õm để thay đổi độ mở của van. Nếu độ rộng xung dương càng lớn thỡ thời gian mở van càng lõu tiết diện thụng qua càng lớn và ngược lại. Giỏ trị độ rộng xung được xỏc định thụng qua thớ nghiệm trờn động cơ thực.
4.2.4. Phương phỏp điều khiển kim phun:4.2.4.1. Nguyờn lý điều khiển kim phun: 4.2.4.1. Nguyờn lý điều khiển kim phun:
Trong quỏ trỡnh hoạt động của động cơ, ECU liờn tục nhận được những tớn hiệu đầu vào từ cỏc cảm biến. Qua đú, ECU sẽ tớnh ra thời gian mở kim phun. Quỏ trỡnh mở và đúng kim phun diễn ra ngắt quóng. Thời gian mở kim phun phụ thuộc vào xung điều khiển. Độ rộng xung thay đổi phụ thuộc vào chế độ làm việc của động cơ. Giả sử ở chế độ tải lớn ứng với cỏnh bướm ga mở lớn thỡ cần phải cung cấp nhiờn liệu nhiều hơn, điều đú nghĩa là ECU sẽ phải cung cấp xung cú độ dài dài hơn để giữ kim phun ở trạng thỏi mở dài hơn nhằm