Lập trình tái tạo cảm giác lái

Một phần của tài liệu Nghiên cứu thuật toán điều khiển lái tự động và từ xa cho các phương tiện (Trang 46)

4.1.1 Giao diện điều khiển

Phần giao diê ̣n điều khiển bao gồm 2 phần Server và Client.

GVHD: TS. Nguyễn Bá Hải Trang 41

Hình 4.1: Giao diện truyền nhận tín hiệu bên server

Nguyên lý hoạt dộng

- Khi chương trình hoa ̣t đô ̣ng thì tín hiê ̣u góc lái của mô hình Server sẽ truyền qua WIFI. Muốn truyền qua WIFI thì phải khai báo port truyền giống với port nhâ ̣n - Server sẽ nhâ ̣n phản hồi tín hiê ̣u cảm biến dòng và góc lái xe quân sự thông qua

khai báo port phản hồi và IP phản hồi.

- Camera phản hồi hình ảnh về thông báo thông tin cho người điều khiển. - Khung nút điều khiển:

GVHD: TS. Nguyễn Bá Hải Trang 42

Nút thiết lập lại có chức năng xác lập vị trí ban đầu của góc vô lăngmô hình server.

Nút khởi động có chức năng cho phép tạo cảm giác trên mô hình server.

 Phần 2: là giao diê ̣n Client của đề tài.

Hình 4.2: Giao diện truyền nhận tín hiệu bên Client

Nguyên lý hoạt động

Khung thông số hoa ̣t đô ̣ng có tác du ̣ng thiết lâ ̣p thông số hoa ̣t đô ̣ng của xe quân sự.

Khung thông số nhâ ̣n có tác du ̣ng nhâ ̣n góc mô hình vô lăng bên Server gửi xuống để điều khiển hướng xe quân sự.

Khung thông số truyền có chức năng truyền dòng i và góc lái xe quân sự lên server để thay đổi cảm giác lái.

GVHD: TS. Nguyễn Bá Hải Trang 43

4.1.2 Giao diện lập trình mô hình

Cũng như giao diê ̣n hiển thi ̣, giao diê ̣n lâ ̣p trình mô hình gồm 2 phần giao diê ̣n lâ ̣p trình Server và giao diê ̣n lâ ̣p trình Client.

 Giao diện lâ ̣p trình bên server.

Hình 4.3: Lưu đồ thuật toán dùng để lập trìnhtính toán mô-men phản hồi tạo cảm giác lái

Nguyên lý Hoạt động:

Sau khi nhận tín hiệu phản hồi góc RW bên cơ cấu lái, giá trị dòng i từmáy Clienttruyền về và kết hợp với góc HW trên vô lăng điều khiển thì thuật toán sẽ tính toán được giá trị mô men tạo lên vô lăng điều khiển nhằm tạo ra cảm giác lái xác thực trên vô lăng.

Hình 4.4: Giao diện tính toán mô-men phản hồi tạo cảm giác lái

Nguyên lý Hoạt động: Thuật toán tính toán momen phản hồi dựa vào cảm biến dòng Góc HW Góc RW phản hồi Cảm biến dòng I phản hồi

Cơ cấu tạo mô men trên vô lăng điều khiển

GVHD: TS. Nguyễn Bá Hải Trang 44 Lập trình trên hình 4.4 sẽ tính toán góc vô lăng trên mô hình server, sau đó tuyền tính hiê ̣u góc lái qua Client thông qua phương thức TCP.

Hình 4.5: Lưu đồ thuật toán dùng để lập trình truyền nhận dữ liê ̣u bên server

Nguyên lý Hoạt động:

Tín hiệu góc quay vô lăng HW được gửi tới Client qua bộ phận phát WIFIbên server để tính toán điều khiển góc quay RW của cơ cấu lái. Đồng thời, bộ thu dữ liệu bên sever sẽ nhận dữ liệu phản hồi dòng i, hình ảnh, góc quay RW ở cơ cấu láitừ máy Client để tính toán mô men phản hồi trên vô lăng điều khiểncũng đưa dữ liệu hình ảnh lên cửa sổ giao diện với người điều khiển. (adsbygoogle = window.adsbygoogle || []).push({});

Bộ phát WIFI- truyền dữ liệu tính toán bên sever Góc HW Bộ thuWIFI - nhận dữ liệu tính toán bên sever Dòng i Hình ảnh phản hồi Góc RW Tới Client Từ Client

GVHD: TS. Nguyễn Bá Hải Trang 45

Hình 4.6: Giao diện truyền nhận dữ liê ̣u bên server

Nguyên lý Hoạt động:

Lập trình trong hình 4.6 sẽ thực hiê ̣n việc nhâ ̣n tín hiê ̣u từ cảm biến dòng và góc lái xe quân sự truyền về để tính toán phản hồi cảm giác lái cho mô hình bên server.Như vâ ̣y, sự truyền nhâ ̣n qua la ̣i giữa server và client sẽ có đô ̣ trễ, sự châ ̣m trễ này được tính toán phần sau.

 Giao diện lâ ̣p trình bên Client.

Hình 4.7: Lưu đồ thuật toán dùng để lập trình điều khiển góc lái

Nguyên lý Hoạt động: Thuật toán so sánh góc HW và RW Tín hiệu Góc HW Góc RW phản hồi Phát wifi Thu wifi Cơ cấu điều khiển góc RW Tín hiệu điều khiển

GVHD: TS. Nguyễn Bá Hải Trang 46 Khi người lái xoay vô lăng, thì tín hiệu góc lái này (góc HW) được máy bên server thu nhận. Tiếp theo tín hiệu này được bộ phát và thu WIFI truyền đi đến máy bên client, tại đây tín hiệu này được thuật toán so sánh góc HW và RW. Từ đó sẽ gửi tín hiệu điều khiển đến cơ cấu lái để diều khiển góc lái RW ứng với góc xoay của HW.Trong quá trình cơ cấu lái làm việc, thì tín hiệu phản hồi góc lái RW luôn được gửi về để thuật toán so sánh với góc lái HW. Quá trình cứ thế diễn ra và kết thúc khi góc lái HW và RW tương ứng với nhau.

Hình 4.8: Giao diện lập trình điều khiển góc lái xe quân sự

Nguyên lý Hoạt động:

Lập trình trong hình 4.8 sẽ tính toán góc lái RW cần điều khiển ở cơ cấu lái trên cơ sở dựa vào tín hiê ̣u góc lái HW của vô lăng trên mô hình bên server truyền xuống. Bộthu wifi: nhận dữ liệu tính toán bên client Tín hiệu điều khiển

từ sever Cơ cấu điều khiển góc lái RW Bộ phát wifi: truyền dữ liệu tính Tín hiệu phản hồi đến sever Cảm biến góc RW

GVHD: TS. Nguyễn Bá Hải Trang 47

Hình 4.9: Lưu đồ thuật toán dùng để lập trìnhtruyền nhận bên Client

Nguyên lý Hoạt động:

Khi người lái xoay vô lăng, thì tín hiệu góc lái này (góc HW) được máy bên server thu nhận. Tiếp theo tín hiệu này được bộ phát và thu WIFI truyền đi đến máy bên client, tại đây tín hiệu này được thuật toán so sánh góc HW và RW. Từ đó sẽ gửi tín hiệu điều khiển đến cơ cấu lái để diều khiển góc lái RW ứng với góc xoay của HW.Trong quá trình cơ cấu lái làm việc, thì tín hiệu phản hồi góc lái RW luôn được gửi về để thuật toán tính toán. Sau đó, tín hiệu này được gửi về bên Server qua bộ phát WIFI để so sánh với góc lái HW. Cùng lúc này, giá trị của dòng i trên động cơ dẫn động cơ cấu lái cũng được cảm biến dòng đưa về bộ phát WIFI trên máy Client.Tại đây, tín hiệu dòng i này được truyền về máy Server làm cơ sở để tính toán mô men phản hồi cảm giác lái trên vô lăng điều khiển.

Cảm bến dòng

GVHD: TS. Nguyễn Bá Hải Trang 48

Hình 4.10: Giao diện lập trình truyền nhận bên client

Nguyên lý Hoạt động:

Lập trình trong hình 4.10 là giao diê ̣n nhâ ̣n góc lái HW trên vô lăng từ mô hình bên server , đồng thời truyền tín hiệu dòng điê ̣n i của động cơ điều khiển cơ cấu láivà góc lái RW của cơ cấu lái (Client) lên mô hình vô lăng điều khiển (Server).

4.2 Thuật toán và lập trình hệ thống lái không trục lái điều khiển từ xa

4.2.1 Giới thiệu lưu đồ thuật toán cho xe có hệ thống lái SBW điều khiển từ xa

Khi hoa ̣t đô ̣ng chương trình bên server sẽ gửi tín hiê ̣u góc xoay vô lăng qua WIFI đến client. Bên client sẽ nhâ ̣n tín hiê ̣u và tính toán góc lái xe quân sự và điều khiển xe quân sự thay đổi hướng.

Khi xe quân sự thay đổi hướng do đô ̣ng cơ tác đô ̣ng, sự ma sát ta ̣i mă ̣t đường càng lớn thì cảm biến dòng cho dòng càng cao. Khi ấy tín hiê ̣u dòng sẽ được truyền qua WIFI tớ i server. Ta ̣i server sẽ tính toán lực phản hồi lên vô lăng người điều khiển.

Cuối cùng khi nhấn stop thì chương trình ngừng hoa ̣t đô ̣ng. Run

Server: mô hình vô lăng Truyền góc HW

Nhâ ̣n dòng i, góc RW phản hồi

Client: Xe quân sự Truyền dòng i, góc RW (adsbygoogle = window.adsbygoogle || []).push({});

Nhâ ̣n góc HW Wifi

Ta ̣o cảm giác lái

GVHD: TS. Nguyễn Bá Hải Trang 49

Hình 4.11: Lưu đồ thuật toán dùng để lập trình điều khiển hệ thống lái SBW từ xa

4.2.2 Thiết kế phần mềm

Chương trình điều khiển bên máy server sau khi kết nối mô hình vô lăng điều khiển lái vào máy laptopserrver. Mở wireless. Mở file chạy chương trình server cho mô hình điều khiển hệ thống lái từ xa. Cửa sổ này thiết kế cho phần truyền tín hiệu qua intenet. Trong LabVIEW có thư viện giao tiếp qua mạng TCP/IP. Cửa sổ này hoạt động như sau:

GVHD: TS. Nguyễn Bá Hải Trang 50

Hình 4.12: Thuật toán bên server

- Tín hiệu từ vô lăng điều khiển sẽ được hiển thị vào hai dạng đó là axis info (tín hiệu số), buton info(nút nhấn hay on/off). Với TCP/IP tín hiệu số truyền qua internet nên hai tín hiệu xoay của vô lăng điều khiển xe sự và tín hiệu từ hệ thống lái trên xe điều được đưa trực tiếp vào bó đây Build Array. Các tín hiệu buton info là các tín hiệu on/ off nên không thể truyền qua Build Array mà phải chuyển tín hiệu on/off thành tín hiệu số bằng hàm Select. Sau khi ra khỏi hàm thì tín hiệu bây giờ là số. Tín hiệu này người nghiên cứu mới đưa vào Build Array.

GVHD: TS. Nguyễn Bá Hải Trang 51

Hình 4.13: Thuật toán bên client

- Chương trình điều khiển bên máy client khi truyền qua wireless bởi access point tín hiệu Client. Khi truyền đến Client tín hiệu vẫn còn Build Array do đó nhóm nghiên cứu phải dùng hàm index Array để tách tín hiệu ra. Khi nào cần dùng tín hiệu nào ta lấy tín hiệu đó ra sử dụng.Như vậy người nghiên cứu tách 11 tín hiệu ra. Tín hiệu nào là tín hiệu số thì dùng luôn cụ thể là tín hiệu góc xoay của vôlăng, tín hiệu độ lợi Kp và tín hiệu giá trị góc lái của cơ cấu lái. Còn các tín hiệu số của các tín hiệu còn lại phải dùng hàm select trả lại trạng thái on/off như cũ mới dùng được.

GVHD: TS. Nguyễn Bá Hải Trang 52

CHƯƠNG V: KẾT QUẢ THỰC NGHIỆM

5.1 Kết quả thử nghiệm

Thực nghiệm nội dung thứ nhất:Thử nghiệm sự đáp ứng linh hoạt của hệ thống lái không trục lái trên xe ở các chế độ vận tốc khác nhau.

- Dùng kích nâng cho hai bánh xe dẫn hướng lên khỏi mặt đường. Kết nối với các thiết bị điều khiển như sơ đồ đã trình bày.Cho hệ thống hoạt động bằng cách: xoay vôlăng điều khiển, quan sát trên màn hình của laptop và ghi nhậnong trường các đồ thị trong trường hợp này như sau :

Đồ thì đáp ứng giữa góc quay của vô lăng (HW) và góc quay của cơ cấu lái (RW) trong trường hợp hằng số đáp ứng K= 4

Hình 5.1: Hằng số đáp ứng K= 4

Nhận xét:

khi K=4 (Hình 4.2) thì đường đáp ứng giữa góc HW và góc RW có khoảng lệch (h) lớn nên yêu cầu đáp ứng nhanh của hệ thống lái chưa đạt yêu cầu.

Đồ thì đáp ứng giữa góc quay của vô lăng (HW) và góc quay của cơ cấu lái (RW) trong trường hợp hằng số đáp ứng K= 250

GVHD: TS. Nguyễn Bá Hải Trang 53

Hình 5.2:Hằng số đáp ứng K= 250

Nhận xét:

khi K= 250 (Hình 4.3) có khoảng lệch (h) gần như bằng 0, tạo ra cảm giác điều khiển có sự đáp ứng nhanh đúng với ý người lái. Như vậy khi hệ số đáp ứng càng cao sẽ cho sự đáp ứng nhanh chóng giữa góc quay của vô lăng và góc quay của bánh xe dẫn hướng.

- Cho xe chuyển động với các vận tốc khác nhau và vẫn giữ hằng số đáp ứng K=250 . Ghi nhận lại các đồ thị đáp ứng giữa góc xoay vô lăng và góc lái ở cơ cấu lái ở nhiều tốc độ xe khác nhau đó. Sau khi quan sát các đồ thị, thì hầu như sự đáp ứng đều có khoảng lệch (h) gần như bằng 0. Như vậy ở mọi trường hợp, mọi tốc độ xe đều có sự đáp ứng ứng nhanh chóng giữa góc quay của vô lăng và góc quay của bánh xe dẫn hướng (với hằng số đáp ứng là K= 250) đúng với ý của người lái.

Nội dung thứ hai: Thực nghiệm cảm giác lái trên xe thật với bốn trường hợp

- Trường hợp kích hai bánh dẫn hướng lên khỏi mặt đường

Dùng kích nâng cho hai bánh xe dẫn hướng lên khỏi mặt đường. Kết nối với các thiết bị điều khiển như sơ đồ đã trình bày.Cho hệ thống hoạt động bằng cách: xoay vôlăng điều khiển, quan sát trên màn hình của laptop và ghi nhậnong trường các đồ thị trong trường hợp này như sau : (adsbygoogle = window.adsbygoogle || []).push({});

GVHD: TS. Nguyễn Bá Hải Trang 54

Hình 5.3: Dòng i=0 khi chưa đánh lái

Nhận xét:

Đồ thị này cho ta biết mối quan hệ giữa dòng điện i và thời gian.Ban đầu tác giả chưa tác động lên vô lăng nên không có tín hiệu điều khiển gửi xuống động cơ RW ở cơ cấu lái. Do vậy, dòng điện i tại động cơ RW bằng 0.(Hình 4.4)

GVHD: TS. Nguyễn Bá Hải Trang 55

Hình 5.4: Dòng i tăng khi đánh lái có kích bánh xe dẫn hướng

Nhận xét:

Đồ thị này cho ta biết dòng i sẽ tăng khi ta xoay vô lăng điều khiển.

 Khi tác giả xoay vô lăng bên server và nâng các bánh xe dẫn hướng lên khỏi mặt đường, khi đó động cơ RW ở cơ cấu lái được cấp nguồn và hoạt động làm thay đổi hướng bánh xe. Do ma sát các chi tiết cơ khí tại cơ cấu lái nên tạo ra mô-men cản tác động lên động cơ RW và dòng i điều khiển động cơ RW tăng lên, theo tỉ lệ thuận với mô-men cản. Hình 4.5 sẽ minh chứng cho điều này.  Đồ thì dòng i khi kích các bánh xe dẫn hướng theo góc lái

GVHD: TS. Nguyễn Bá Hải Trang 56

Nhận xét:

o Khi tác động vào vô lăng với góc lái nhỏ, lúc ban đầu thi dòng i tăng cao do ma sát ở cơ cấu lái lớn. Khi cơ cấu lái hoạt động thì ma sát giảm dần do quán tính làm cho dòng i giảm xuống.

o Khi hết hành trình của góc lái thì i tăng đột ngột do động cơ bị hãm. Khi ta trả lái thì dòng i giảm dần và hầu như không đổi cho đến hết hành trình ngược lại.

 Đồ thì mô-men phản hồi khi ta kích các bánh xe dẫn hướng

GVHD: TS. Nguyễn Bá Hải Trang 57

Nhận xét:

oDo không có mô-men trợ lực assit

nên không bị ảnh hưởng bởi vận tốc và góc lái nên đồ thị có biên dạng hình chữ nhật.

oTrong đồ thị ta thấy mô-men phản hồi tăng lên (khi bắt đầu thay đổi góc lái) rồi giảm xuống, điều đó cho ta biết khi bắt đầu thay đổi góc lái thì cần một mô-men lớn để thắng được mô-men cản do ma sát cơ khí của cơ cấu lái.

- Trường hợp xe đứng yên và các bánh xe tiếp xúc với mặt đường (V=0):

Ta hạ kích và cho các bánh xe dẫn hướng tiếp xúc với mặt đường nhựa. Đồ thị dòng i cho ta biết mô-men cản tại cơ cấu lái

Hình 5.7: Dòng i tăng khi đánh lái có ma sát giữa các bánh xe dẫn hướng với mặt đường

Nhận xét:

Khi tác giả xoay vô lăng bên server và các bánh xe dẫn hướng tiếp xúc với mặt đường, khi đó ma sát tại cơ cấu lái sẽ tăng nên dòng i cũng tăng lên.(Hình 4.8)

 Đồ thì dòng i theo góc lái khi các bánh xe tiếp xúc mă ̣t đường với vâ ̣n tốc V=0 km/h

GVHD: TS. Nguyễn Bá Hải Trang 58 oKhi tác động vào vôlăng với góc lái nhỏ, lúc ban đầu thi dòng i tăng cao do

ma sát ở cơ cấu lái lớn và các tác nhân khác như: tải trọng, ma sát giữa các bánh xe dẫn hướng với các mặt đường. Khi cơ cấu lái hoạt động thì ma sát giảm dần do quán tính làm cho dòng i giảm xuống.

oKhi hết hành trình của góc lái thì i tăng đột ngột do động cơ bị hãm. Khi ta trả lái thì dòng i giảm dần và hầu như không đổi cho đến hết hành trình ngược lại.

oDòng i trong trường hợp này lớn nhất (xe đứng yên và các bánh dẫn hướng tiếp xúc với mặt đường).

(adsbygoogle = window.adsbygoogle || []).push({});

Một phần của tài liệu Nghiên cứu thuật toán điều khiển lái tự động và từ xa cho các phương tiện (Trang 46)