View Single Post
Old 29-08-2009, 11:40 PM   #8
HaiAu2005
Đệ tử 9 túi
 
Tham gia ngày: May 2006
Bài gửi: 150
:
Trên thế giới có nhiều hãng có các giải pháp & sản phẩm khác nhau. Tôi cho rằng sản phẩm của mỗi hãng có những ưu nhược điểm khác nhau, ai sử dụng quen cái nào thì thích dùng cái đó thôi. Mỗi giải pháp cũng đều có ưu nhược điểm: ví dụ như nếu ngôn ngữ lập trình bậc thấp thì giá rẻ, đòi hỏi người lập trình phải "mày mò" mất nhiều thời gian và công sức thì mới làm được, còn ngôn ngữ lập trình bậc cao thì giá đắt nhưng đòi hỏi người dùng ít phải hiểu về nó hơn mà vẫn làm được. Tôi nghĩ rằng không thể có một thứ nào có đầy đủ toàn các mặt tốt cả. LabVIEW, MATLAB/Simulink cùng các Toolboxes khác nhau cũng vậy, và cả 20SIM chắc cũng có mặt mạnh mặt yếu. Ngoài ra còn vô vàn các hãng khác nữa họ đều có những sản phẩm có đặc thù riêng của họ cả.

Đứng trên quan điểm người sử dụng, tôi chưa dùng những giao tiếp dữ liệu dùng PIC để chạy các chương trình điều khiển. Chỉ biết ưu điểm của nó là rẻ so với những sản phẩm khác. Theo Falleap nói chuyện thì những ứng dụng dùng PIC tương tự như Embedded PC (hoặc cũng có thể gọi single-board computer) của hãng Rabbit Semiconductors:

http://www.rabbit.com/

Loại mới nhất dường như là series BL4S2xx:

http://www.rabbit.com/products/bl4s200/

Chạy cái này bằng Dynamic C (cũng là ngôn ngữ C nhưng rất khác với ANSI C) qua cổng RS-232 và Ethernet. Tôi đã có dịp dùng thử một loại embedded PC này, bảng cũ hơn chút là bảng RL2100, chạy bằng Dynamic C qua cổng RS-232 nhưng không có cách nào có thể lập trình có giao diện tốt được và cũng không có cách nào lập trình để lưu dữ liệu vào files trên máy chủ được. Vào mạng của Rabbit tham khảo thông tin về loại này cho thấy rằng chạy RL2100 bằng Dynamic C qua cổng RS-232 không có khả năng lưu dữ liệu vào files, mà phải tìm giải pháp khác: kết nối embedded PC và máy chủ bằng RS-232 và Ethernet, rồi chạy Dynamic C load chương trình vào RL2100 (đại khái tôi hiểu giống như nạp phần mềm cho cái thằng embedded PC chạy và liên kết với máy chủ), sau đó chạy chương trình LabVIEW để giao tiếp lưu dữ liệu (Rabbit có cung cấp chương trình LabVIEW mẫu). Lập trình và giải pháp lưu dữ liệu vào files khá phức tạp (sinh viên không chuyên về lập trình và giao tiếp dữ liệu bó tay luôn!)

Bài toán về cái bảng giao diện USB ở Lab cho thiết bị thí nghiệm là bài toán nhỏ như con kiến bé như cái kim: 1. chấp nhận phần mềm của hãng sản xuất, 2. tôi có thể giải quyết thay thế được bằng những thứ có sẵn ở Lab (dùng LabVIEW và MATLAB/Simulink). Khi đem trao đổi tôi chỉ muốn tận dụng cái bảng giao diện USB (cùng với 1 cái máy desktop PC to dùng chỉ dùng chạy cái chương trình phần mềm của hãng sản xuất thấy hơi phí!) và nếu có được giải pháp đơn giản thì có thể để cho sinh viên làm và chạy thử.

Còn bài toán cho giải pháp giao diện giữa host PC và target PC (dùng loại PC có đầy đủ chức năng như một PC thường, có hệ điều hành, và có đầy đủ các cổng giao tiếp -> mô hình tầu nho nhỏ nhưng cũng có chiều dài tới gần 1 mét, chiều rộng 30-50 cm đủ chỗ chứa cả cục PC\104 - cũng vừa là khối lượng dằn mô hình luôn vì phải xếp thêm mấy cục nặng vào nữa để cho mô hình tầu cân bằng khi thả trong nước) là bài toán lớn hơn và cũng dùng cho mục đích cho việc điều khiển phương tiện ngầm. Nếu R&D của Falleap mà "chơi" được & muốn "chơi" thì vào địa chỉ sau xem thử:

http://www.dieukhien.net/vn/discuss....2983&pagenum=1

Một trong những vấn đề cần giải quyết của bài toán trình bày ở link trên là giải pháp giao tiếp dữ liệu và điều khiển cho cái chân vịt biến bước trước, sau đó là thử nghiệm để đo và ước lượng các lực do chân vịt tạo ra, và tiếp đến là ứng dụng chân vịt này cho phương tiện ngầm không người lái (Autonomous Underwater Vehicles). Đại khái bài toán này có từng giai đoạn:

1. Giai đoạn 1: Kiểm nghiệm đánh giá đặc tính chân vịt: cần giao tiếp truyền dữ liệu giữa máy tính chủ và máy tính nhúng (hiện tại dùng RL2100) và phát triển chương trình điều khiển phát, thu nhận và lưu dữ liệu từ các sensors và thiết bị đo lực mô men. Yêu cầu của thiết bị truyền dữ liệu là gọn nhẹ, và kết nối qua cổng Ethernet, có thể lập trình dễ dàng (cho những người không rành mấy về lập trình) và có giao diện tốt, lưu được dữ liệu vào máy tính chủ. Như trong hình vẽ, bao gồm cả việc điều khiển động cơ không chổi than, động cơ bước, các sensors chính là đo độ dịch chuyển (displacement), và tốc độ động cơ, góc quay động cơ, sensors đo lực và mô men. Hiện tại cái chân vịt này được điều khiển bằng Rabbit RL2100 chạy bằng Dynamic C >> tôi muốn chuyển sang ngôn ngữ lập trình khác, e.g. LabVIEW, để sinh viên không rành mấy về lập trình có thể dùng được.

2. Giai đoạn 2: Thiết kế thí nghiệm và tiến hành thí nghiệm tại bể thử, mô hình hóa dựa trên kết quả thu được > đánh giá đặc tính chân vịt.

3. Giai đoạn 3 & các giai đoạn tiếp theo: Thiết kế phương tiện ngầm và hệ điều khiển cho nó ... tiếp tục cần giải pháp điều khiển và truyền dữ liệu > mục tiêu cuối cùng như trong Hình 2 trong link trên, nghĩa là lập trình trên máy chủ, rồi tải xuống máy mục tiêu rồi ngắt máy chủ ra khỏi máy mục tiêu, cho vận hành AUV bằng máy mục tiêu gắn trên AUV.

Liệu R&D của Falleap (hoặc bác bqviet) "chơi" được thì cho biết. Rất có thể sẽ có giải pháp nào đó và giải pháp này sẽ có thể ứng dụng cho dự án tôi đang làm này, và cũng có thể thực hiện được ở VN vì tại VN hiện đang có nhu cầu về phương tiện ngầm và hệ điều khiển phương tiện ngầm, tầu lặn dùng cho khách du lịch. Nếu Falleap thấy có giải pháp nào đó thì thử phác thảo một số điểm xem sao.

Hải Âu

thay đổi nội dung bởi: HaiAu2005, 30-08-2009 lúc 02:00 AM.
HaiAu2005 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn