Demo sử dụng RTAI, ComediLib kết hợp với Matlab/Simulink/RTW

February 12, 2009

Sau khi tốn một thời gian config linh tinh với Ubuntu 8.04 cuối cùng cài đặt xong RTAI và ComediLib nhân diện được xong cái PCI6220 của NI. Đến phần cài cái trình để biên dịch mô hình thành mã C thì thằng Scilab/Scicos chạy tốn quá nhiều CPU, move 1 cái mô hình là 100% CPU luôn, đơ cả máy. Thế là quay sang dùng Matlab/Simulink/RTW.

Dùng Real-Time Workshop để biên dịch, rồi dùng QRtaiLab để chạy kết hợp Real-Time. Thằng QRtaiLab có ưu điểm hơn hẳn so với xrtaiLab. Xem sự so sánh

Differences between xrtailab and qrtailab:

xrtailab qrtailab
saving process Is blocked by the GUI. Is not blocked by the GUI as the scope thread is a hard real time thread. saving cannot be disturbed. Because of this qrtailab can block the keybord, if qrtailab consumes to much cpu power.
plotting much data the plotting and saving is not in realtime plotting and saving is in realtime
cpu load for q(x)rtailab (example 1) 90% 20%
cpu load for netrpc (example 1) 1.3% 25%
cpu load for X (example 1) 3% 40 %

Mới đầu demo cái testing của nó, không dính gì đến phần cứng cả, hôm sau gắn cái connector cẩn thận demo giao tiếp với board PCI6220 dùng thư viện driver của ComediLib.

Mô hình là cái hình nằm phía dưới bên trái test.mdl (sử dụng Simulink), còn mấy cái khác là của QRtaiLab. Tât cả các tham số của mô hình, .. đều setup được thông qua cửa sổ Parameters Manager.

Đây là screenshot để chứng tỏ đã detect được board PCI 6220:

Note: Chia sẻ Matlab R2008b cho Unix từ server của mình (gần 4GB): Mathworks.Matlab.R2008b.UNIX.DVD.ISO-TBE

Chúc anh em thành công.

Các bài viết liên quan:

  1. Tạo file .exe trong Matlab dùng Matlab Compiler Có nhiều bạn khá băn khoăn về việc dịch một ứng dụng trong Matlab ra file .exe để chạy độc lập trên các máy không cài Matlab đúng không ?? Hay là cách để đóng gói sản phẩm của mình thì nên làm thế nào ? Để có thể dịch ra file .exe yêu cầu [...]...
  2. Matlab - tính toán thời gian chạy ứng dụng, một hàm Hôm trước có record video về  Video hướng dẫn lập trình GUI: tạo 1 máy tính đơn giản không thấy các bạn cho ý kiến gì, không hiểu có tốt không nữa, nếu k tốt thì sẽ dừng lại làm việc khác  Hôm nay xin giới thiệu một công cụ đơn giản trong Matlab để [...]...
  3. RTAI - Beginner's Guide Tài liệu nói một chút về khái niệm Real-Time và giới thiệu về cách viết Module cho Kernel, ... các module RTAI. Mình chuyển ra file .pdf từ tài liệu này Chúc các bạn thành công. 17/04/2009: Update lại file....
  4. Thủ thuật Matlab - Lấy lại số liệu trên Scope và hiển thị trên đồ thị Chắc hẳn các bạn làm việc với Matlab - Simulink đã làm quen với khối Scope trong thư viện Sinks, khối này khi hiển thị mô phỏng với thời gian tương đối dài thì chúng ta khó lòng thu lại được đường đặc tính của nó. Khi chụp thẳng hình này thì sẽ toàn màu [...]...
  5. Cách học Matlab hiệu quả Chào các bạn. Mình có ý định viết một vài Tutorial để học Matlab nhưng qua tìm hiểu và search thì có một số link rất là hay. Do đó, mình chỉ xin trình bày một số nguồn tham khảo dành cho các bạn mà mình thấy là hay. 1. Matlab Help Cái này thì [...]...
  6. Vẽ đồ thị trong Matlab Mình đang làm đồ án về đề tài giao tiếp máy tính và vđk qua công com, mình có 1 thắc mắc mong được các bạn chỉ giáo: khi dữ liệu được truyền vào máy tính thì có sự kiện BytesAvailable, mình viết hàm serial_Callback() để đọc dữ liệu này như sau: function serial_CallBack(obj,event) inval=fread(obj,1); [...]...

{ 4 comments… read them below or add one }

hoaln May 8, 2009 at 1:09 pm

Em cài matlab R2009a cho unix vào /usr/local/matlabR2009a nhưng mỗi lần vào matlab lại phải gõ:
sudo /usr/local/matlabR2009a/bin/matlab

vì nó không có shortcut trong Applications ở thanh system

Có cách nào nhanh hơn không ạ

Reply

ngohaibac May 8, 2009 at 4:53 pm

Click vào cái menu và chọn Edit Menus rồi em chọn New Item rồi điền các thông số của Matlab vào. Trong chỗ command điền như sau:

/usr/local/matlabR2009a/bin/matlab –desktop

Là em khỏi phải sử dụng run với Terminal, nếu không thì Matlab chạy phát tắt ngay.

Chúc em thành công.

Reply

hoaln May 8, 2009 at 3:06 pm

Giải pháp tạo thời của em là tạo 1 file matlab trên desktop và set cho nó có quyền thực thi.

Bên trong thì mình gõ:

sudo /usr/local/matlabR2009a/bin/matlab

Mỗi lần chạy thì enter vào file matlab và chọn Run in terminal.

Em cũng hỏi tương tự cho cái sdcc,em cài rồi nhưng không thấy biểu tượng trong Applications đâu cả,gõ trong terminal sdcc thì nó ra hướng dẫn,ko thấy GUI đâu cả :|

Reply

Dương Thuý Ngà October 19, 2009 at 1:40 pm

Có Bác nào đang học ĐH Bách Khoa năm thứ 4 – 5 về điều khiển tự động siêu siêu không nhỉ? em đang có việc cần các Bác tư vấn, gấp lắm, quan trọng lắm! Giúp em với. SOS

Reply

Leave a Comment

Previous post:

Next post: