PDA

View Full Version : Giải pháp kết nối phần mềm mô phỏng


HaiAu2005
24-08-2009, 10:48 PM
Mình không hiểu lắm khi Falleaf nói (hoặc có thể Falleaf chưa hiểu trao đổi của mình):

Anh Hùng, cái này làm cực kỳ đơn giản, nếu cần thiết anh gửi yêu cầu lên, em nghĩ sẽ có nhà thiết kế làm được cái này cho anh bằng PIC.

Tại sao lại phải dùng PIC nữa? Dùng PIC trong trường hợp này để làm gì khi mà đã có một bảng giao diện USB hoàn chỉnh rồi? Hay dùng PIC để thay PIC trong bảng giao diện USB của họ?

Khi mua thiết bị thí nghiệm về sau khi nạp xong chương trình điều khiển và driver thì thấy nó không hỗ trợ bất kỳ một ngôn ngữ lập trình khác và là chương trình "chết cứng" không thay đổi được nên mới nghĩ đến việc thay đổi chương trình đó mà không cần phải dùng tới một bảng giao diện dữ liệu nào khác vì thiết bị đã có sẵn một bảng giao diện USB cùng driver.

Mình nghĩ rằng về nguyên tắc khi một bảng giao diện nào đã kết nối với máy tính và đã có driver rồi thì có thể dùng Visual Studio hoặc có một cách nào đó có thể tiếp cận tới thiết bị đó để nhận và phát dữ liệu (vì các drivers đều xuất hiện trong Device Manager). Tuy nhiên không chắc chắn lắm vì chưa làm cái này bao giờ, mà chỉ làm các ứng dụng điều khiển với bảng giao diện từng dùng thì khi nạp drivers vào thì chúng đều đã "sẵn sàng" chạy rồi không cần phải làm thêm gì khác.

Nếu mất nhiều thời gian thì có lẽ phải tìm giải pháp khác đơn giản và mất ít thời gian hơn mà vẫn thay đổi được chương trình điều khiển, ví như thay bảng giao diện USB dùng loại khác và phần mềm khác mà ở Lab có. Nghĩa là nếu ý ở trên dùng PIC để thay thế cái bảng USB của nhà sản xuất & dùng Visual Studio thì có thể có giải pháp khác thay bằng một NI-DAQ card và chạy bằng LabVIEW đã có sẵn thì cực kỳ đơn giản và lập trình hệ điều khiển bằng LabVIEW dễ dàng hơn Visual Studio.

HA

bqviet
25-08-2009, 11:52 AM
Mình không hiểu lắm khi Falleaf nói (hoặc có thể Falleaf chưa hiểu trao đổi của mình):

Anh Hùng, cái này làm cực kỳ đơn giản, nếu cần thiết anh gửi yêu cầu lên, em nghĩ sẽ có nhà thiết kế làm được cái này cho anh bằng PIC.

Tại sao lại phải dùng PIC nữa? Dùng PIC trong trường hợp này để làm gì khi mà đã có một bảng giao diện USB hoàn chỉnh rồi? Hay dùng PIC để thay PIC trong bảng giao diện USB của họ?

Khi mua thiết bị thí nghiệm về sau khi nạp xong chương trình điều khiển và driver thì thấy nó không hỗ trợ bất kỳ một ngôn ngữ lập trình khác và là chương trình "chết cứng" không thay đổi được nên mới nghĩ đến việc thay đổi chương trình đó mà không cần phải dùng tới một bảng giao diện dữ liệu nào khác vì thiết bị đã có sẵn một bảng giao diện USB cùng driver.

Mình nghĩ rằng về nguyên tắc khi một bảng giao diện nào đã kết nối với máy tính và đã có driver rồi thì có thể dùng Visual Studio hoặc có một cách nào đó có thể tiếp cận tới thiết bị đó để nhận và phát dữ liệu (vì các drivers đều xuất hiện trong Device Manager). Tuy nhiên không chắc chắn lắm vì chưa làm cái này bao giờ, mà chỉ làm các ứng dụng điều khiển với bảng giao diện từng dùng thì khi nạp drivers vào thì chúng đều đã "sẵn sàng" chạy rồi không cần phải làm thêm gì khác.

Nếu mất nhiều thời gian thì có lẽ phải tìm giải pháp khác đơn giản và mất ít thời gian hơn mà vẫn thay đổi được chương trình điều khiển, ví như thay bảng giao diện USB dùng loại khác và phần mềm khác mà ở Lab có. Nghĩa là nếu ý ở trên dùng PIC để thay thế cái bảng USB của nhà sản xuất & dùng Visual Studio thì có thể có giải pháp khác thay bằng một NI-DAQ card và chạy bằng LabVIEW đã có sẵn thì cực kỳ đơn giản và lập trình hệ điều khiển bằng LabVIEW dễ dàng hơn Visual Studio.

HA

Có ai có kinh nghiệm lập trình nhận và xuất dữ liệu qua cổng USB của một bảng USB I/O board đã có Driver (của hãng sản xuất), xem trao đổi ở địa chỉ sau:

http://www.dieukhien.net/vn/discuss.php?thid=3047&pagenum=1

xin trao đổi giùm. Tôi đang muốn dùng Visual Studio/.NET để nhận dữ liệu và xuất dữ liệu tới bảng giao diện USB đã nạp driver (có file dll) rồi liệu có thể được không?

Hải Âu


Quả thực chưa hiểu anh Hải Âu muốn làm theo cách nào. Có 2 hướng chính để kết nối máy tính (chạy phần mềm đo lường - điều khiển) với thế giới bên ngoài: sử dụng bo mạch vào/ra tín hiệu và đổ chương trình lên bo mạch / thiết bị.

Ở cách thứ nhất, bo mạch chỉ làm nhiệm vụ vào/ra tín hiệu, ngoài ra không làm gì khác. Toàn bộ chương trình nằm trên máy tính. Với cách này, phần mềm máy tính tương đối nặng, băng thông (tốc độ vào/ra) nói chung bị hạn chế và người sử dụng phải lập trình tương đối sâu khi can thiệp vào hoạt động của bo mạch. Chuẩn truyền thông có thể là ISA, PC104, PCI, PC104+, USB.

Ở cách thứ hai, ngay trên bo mạch đã có khả năng xử lý nhất định và chương trình sau khi biên dịch trên máy tính sẽ được "đổ" lên bo mạch và chạy ở đây, giải phóng khỏi chức năng tính toán của máy tính. Máy tính lúc này chỉ đóng vai trò giám sát, ít tham gia trực tiếp. Cách này giải quyết được những nhược điểm của cách trên, nhưng giá thành đắt hơn. Chuẩn truyền thông thường là Ethernet, PXI, PCI Express. Điển hình của phương pháp này là hãng dSPACE sử dụng cho dòng sản phẩm mô phỏng của mình.

Theo như anh Hải Âu đề cập trong bài viết đầu, có vẻ anh muốn đi theo cách thứ nhất. Tuy nhiên có mấy vấn đề khuyến cáo anh sẽ gặp phải
_ Lập trình trực tiếp bằng C/C++ vất vả đấy, khối lượng công việc cần làm tương đối lớn nếu so với các bo mạch hỗ trợ Matlab/Simulink.
_ Visual Studio chưa chắc đã cho phép can thiệp sâu tới cấp thấp của bo mạch. Đây là nhược điểm của môi trường Windows nói chung kể từ WinNT.
_ Bo mạch vào/ra kết nối cổng USB người rành về nhúng có thể làm tương đối đơn giản, tuy nhiên với người chuyên về học thuật và quen làm việc thì lại nằm ngoài tầm tay.
_ Làm kết nối USB thì dễ, nhưng vào/ra tín hiệu analog không bao giờ dễ dàng. Còn rất nhiều vấn đề sâu sa mà tay mơ dễ bỏ qua: thời gian lấy mẫu, độ phân giải ADC & DAC, lọc nhiễu bằng mạch hay bằng thuật toán, nếu bằng mạch thì mạch lọc kiến trúc nào, lọc bằng thuật toán thì dùng thuật toán nào, thay đổi hệ số khuếch đại, dòng thiên áp (bias current), điện áp lệch (offset voltage) ...

bqviet
25-08-2009, 11:53 AM
Off topic: không rõ anh Hải Âu có làm việc gì liên quan tới cái bể thử của Vinashin không nhỉ ?

HaiAu2005
25-08-2009, 05:16 PM
Không có làm gì liên quan đến bể thử của VINASHIN. Chỉ có lần đã từng đến thăm bể thử cũ của VINASHIN thôi. Còn bể mới nghe nói ở khu Hòa Lạc nào đó thì chưa có dịp, và chắc cũng chưa xây dựng xong!

Cảm ơn bqviet đã trả lời. Bài toán cho giải pháp giao diện USB mà mình nói tới đơn giản như sau: mua một bộ giao diện I/O USB có sẵn driver và software của hãng sản xuất rồi, nạp software và driver vào máy tính thì chạy tốt, nhưng software chương trình điều khiển của hãng sản xuất chỉ dùng để vận hành được thiết bị (phần cứng gồm sensors và actuators có điện áp -10/+10V) kết nối với cái bộ giao diện I/O USB thôi -> muốn thay đổi chương trình điều khiển "chết cứng" của hãng với giao diện tốt hơn. Bây giờ muốn tìm giải pháp nào đó, có thể dùng Visual Studio, để có thể lập đuợc chương trình điều khiển (thay cho software của hãng và phát triển các thuật toán điều khiển khác) mà vẫn dùng bảng giao diện USB của hãng sản xuất đó (nghĩa là chỉ muốn thay đổi phần mềm trong máy tính còn giữ nguyên bảng giao diện USB + các bộ cảm biến và chấp hành - phần cứng - của họ). Nếu không có giải pháp nào đơn giản làm được việc này thì có lẽ cách đơn giản khác là không dùng bảng giao diện USB và phần mềm của hãng nữa mà dùng bảng giao diện và phần mềm khác - giải pháp này thì chắc không khó, ví dụ dùng LabVIEW + PCI-6036E thay cho phần mềm và bảng USB của hãng <-> phần cứng (sensors + actuators).

Vấn đề cơ bản cần giải quyết là cái bảng giao diện USB và driver của hãng sản xuất không hỗ trợ bất kỳ một software nào khác ngoài software mà họ bán cho mình (có vẻ lập bằng Visual Studio/.NET) -> Từ chỗ điểm này mình nghĩ chắc là phải có cách viết được chương trình điều khiển như nhà sản xuất họ đã làm.

Hải Âu

bqviet
25-08-2009, 08:42 PM
Như vậy là đã rõ: bên anh mua bo mạch vào/ra kèm phần mềm có sẵn, nhưng anh muốn lập trình can thiệp trực tiếp vào bo mạch thay vì dùng phần mềm của hãng. Việc cần làm là
_ Tìm xem hãng có cung cấp thư viện lập trình cho bo mạch này không (thư viện hàm API cấp thấp, chứ không phải phần mềm có sẵn). Nếu có thì dùng luôn.
_ Nếu hãng không cung cấp, thử hỏi họ xem có thể cho hoặc bán với giá hợp lý được không ?
_ Nếu hãng không cho cũng chả bán, anh thử xem bo mạch có nằm trong danh mục thiết bị hỗ trợ của thư viện Comedi này hay không: http://www.comedi.org/ Comedi là bộ thư viện hỗ trợ lập trình cho các bo mạch vào/ra tín hiệu, số lượng phần cứng nó hỗ trợ phải nói là khổng lồ, tuy nhiên chỉ chạy với Linux.

Cuối cùng nếu vẫn không được thì hoặc anh tạm bằng lòng với phần mềm của hãng, hoặc mua cái mới, hoặc đặt hàng bên diễn đàn thiết kế bo mạch và thư viện từ đầu - giá thành chắc cũng không đắt quá đâu. Hoặc bớt chút thời gian chạy qua bên Cty Vinashin Electric, nơi bqviet đã thiết kế một số bo mạch vào/ra trên nền PSoC và PIC rất tốt, cùng hệ SCADA cỡ nhỏ cho lớp tàu 56K tấn.:D Giám đốc của Vinashin Electric - ông LM Đức - hẳn anh cũng không lạ gì.

HaiAu2005
25-08-2009, 10:29 PM
Nếu ở VN thì chắc tới chỗ bqviet và chỗ bác LM Đức ngay, nhưng không ở VN nên phải tìm cách tự giải quyết, chủ yếu là muốn thử thách tìm giải pháp nào đó mà chỉ cần thay phần mềm thôi (vì cái phần mềm của hãng chỉ là chương trình điều khiển đơn giản minh họa thuật toán P, PI, PD và PID, không thể thay đổi được gì -> muốn minh họa thuật toán điều khiển khác PID thì phải thay đổi chương trình phần mềm). Cái bảng giao diện USB thì lạ hoắc không có trong danh mục của Comedi, chắc do hãng họ làm luôn và không có thông tin gì thêm. Như đã trao đổi, nếu dùng giải pháp thay bảng giao diện USB & phần mềm khác thì quá đơn giản, vì tại lab đã có mấy bảng giao diện của National Instruments và LabVIEW rồi, chỉ việc gắn vào là làm được thôi.

HA

bqviet
26-08-2009, 11:32 AM
Vụ này coi như bó tay. Có lẽ anh dùng bo mạch khác thôi. Nếu mua mới, nên mua loại hỗ trợ bởi Comedi, khi đó không những lập trình dễ dàng mà còn có khả năng dùng được với Scilab/Scicos.

HaiAu2005
26-08-2009, 05:33 PM
Nội dung Training Software của hãng chỉ gồm các chương trình như sau:
http://www.delorenzogroup.com/dl/demo/DLproc/DLproc_e.htm

Nếu không có cách nào khác cách thay cả bộ giao diện USB và phần mềm thì đành bó tay thật. Chỉ có thể làm được khi mà nhà sản xuất cung cấp thêm thông tin về cái USB Interface Unit của họ và các hàm thư viện của họ. Cái này chắc khó... không làm được thì không tận dụng được bảng giao diện của họ. Nếu thay bảng giao diện bằng cái mới thì cũng có nhiều giải pháp, trên thị trường có mấy loại USB I/O Board Kit (ví như của Jaycar Electronics) giá không đắt lắm, nếu muốn thử nghiệm mua về tự lắp đặt, hàn và "tí táy tí mẻ" cũng đơn giản.

Thay bảng giao diện bằng bảng giao diện của NI và software bằng LabVIEW thì cực đơn giản, lab đã có sẵn.

Hải Âu

HaiAu2005
28-08-2009, 12:29 AM
Tôi đã hỏi hãng sản xuất cái bảng giao diện USB, họ nói rằng họ lập trình chương trình ứng dụng điều khiển bằng MS Visual Studio C++, do vậy rất có khả năng có cách nào đó lập trình giao tiếp dữ liệu với nó được. Tuy nhiên không có thông tin gì thêm. Có thể hãng này không muốn cung cấp thông tin gì về việc viết chương trình ứng dụng cho phần cứng của họ.

Hải Âu

bqviet
28-08-2009, 11:44 AM
Trên nền Windows khả năng lớn hãng sản xuất dùng công cụ Visual C++ kết hợp với bộ Windows SDK - việc này không có gì lạ. Điều quan trọng là hãng có chịu mở một phần thiết kế và/hoặc mã nguồn hay không. Nếu hãng chỉ cần mở một phần thiết kế (bố trí bộ nhớ, thanh ghi và một số hàm API cấp thấp nhất), tự cộng đồng FOSS cũng có thể xây dựng thư viện được chứ không cần nhà sản xuất phải tốn công. Điều này đúng với rất nhiều card của hãng NI và hãng Advantech - hỗ trợ trong thư viện Comedi.

Một khi hãng đã không chịu mở, thì họ dùng công cụ gì không quan trọng. Mọi thứ vô nghĩa hết.

Một khi hãng đã mở thông tin, thì họ dùng công cụ gì cũng không quan trọng, cộng đồng FOSS sẽ hỗ trợ nhiệt tình. Khi đó lập trình bằng C, C++, Java, Python đều được; thậm chí dùng cả JavaScript (!) cũng được.

Các loại I/O card chạy được với thư viện Comedi có rất nhiều ưu điểm: không những dễ dàng lập trình điều khiển, mà còn có thể dùng với nhiều chương trình điều khiển có sẵn như Octave, Scilab/Scios (bộ phần mềm tương đương Matlab/Simulink) - lập trình bằng khối kéo-thả rồi sinh mã C/C++ để tối ưu bằng tay, tiện không kể siết.

HaiAu2005
28-08-2009, 03:18 PM
Một khi hãng đã mở thông tin, thì họ dùng công cụ gì cũng không quan trọng, cộng đồng FOSS sẽ hỗ trợ nhiệt tình. Khi đó lập trình bằng C, C++, Java, Python đều được; thậm chí dùng cả JavaScript (!) cũng được.

Hôm qua mới hỏi thêm hãng sản xuất thiết bị thí nghiệm có thông tin gì thêm và họ có thể cung cấp được mã nguồn hay không. Đang chờ trả lời.

Mình không dùng Linux, nên chắc vụ này phải bó tay, và có lẽ tìm giải pháp khác đơn giản hơn.

Topic ngoài luồng liên quan đến giao tiếp dữ liệu giữa máy chủ và máy mục tiêu PC/104: Bqviet có kinh nghiệm làm với PC/104 không? Ở Lab mình có một cái PC/104 trước đây do một anh bạn đặt làm gồm cả bộ PC/104 và cái I/O module để kết nối như sau:

Host PC + wireless card (Lucent Technologies) <-Data communication-> wireless card + PC/104 (cáy này nối với một động cơ điện brushed và một động cơ bước trên mô hình tầu để điều khiển tầu). Chương trình điều khiển ở máy chủ do một tay khác làm, đại khái đã dịch rồi, chỉ việc chạy thôi, không có tài liệu gì hết và cũng không thay đổi gì được. Hiện nay mình đang muốn cải tiến cái kết nối Host PC và PC/104 và set up nó để có thể chạy một chương trình điều khiển nào đó dùng MS Visual Studio, LabVIEW hoặc MATLAB/Simulink chẳng hạn. Cái PC/104 nghe nói nạp Real-Time OS QNX (phiên bản cũ cũ rồi, của những năm 2003-04). Máy tính chủ quá cũ, mình định thay bằng cái mới hơn để có thể nạp được chương trình lập trình mới vào.

Nếu có kinh nghiệm gì về việc thiết trí kết nối giao tiếp thì trao đổi giùm.

Hải Âu

bqviet
28-08-2009, 06:57 PM
PC104 là chuẩn bus công nghiệp rất cổ nhưng vẫn còn được sử dụng rộng rãi hiện nay. Bản chất bus PC104 chính là ISA, với phần connector bền về cơ khí; về mặt điện PC104 và ISA là một. Thông thường người ta mua máy tính có bus PC104, card I/O cũng theo chuẩn PC104 có thể mua hoặc tự chế tạo. Tự chế card PC104 hoặc ISA khá đơn giản, lập trình cho nó cũng rất đơn giản nếu biết địa chỉ và vai trò các thanh ghi điều khiển. Tất cả chỉ có vậy.

Thế hệ đầu tiên của phần mềm SCADA cho tàu thủy, bqviet sử dụng card PC104 mạch in làm bằng in lưới, câu dây để xuyên lỗ bằng tay (ý nói là card I/O PC104 nếu yêu cầu không quá nhiều thì thiết kế được tương đối đơn giản) thế hệ thứ 2 sử dụng Modbus, tới nay thì phần mềm này không còn phụ thuộc vào loại mạng cụ thể nào.


Bài toán của anh có thể làm đơn giản hơn
_ Máy tính đã có sẵn cổng, có thể dùng 1 trong 3 loại sau: RS232 (cổng serial), USB hoặc Ethernet. Các chuẩn truyền thông khác (cổng máy in IEEE1284, khe ISA, PCI ...) cũng dùng được nhưng phức tạp thêm một cách không cần thiết.
_ Một bo mạch tự chế nối vào cổng máy tính, phát tín hiệu không dây theo chuẩn Zigbee IEEE 802.15.4 hoạt động ở băng tần 2,4 GHz
_ Một bo mạch không dây khác thu phát Zigbee và làm nhiệm vụ I/O luôn.

Tất cả chỉ có vậy, giải pháp trên theo kinh nghiệm của bqviet là tối ưu
_ Nếu dùng PC104 hệ thống cần thêm 1 máy tính PC104 chạy độc lập nữa.
_ Wireless có nhiều phương án (phổ biến hiện nay hay dùng ở dải tần 40 MHz và 315 MHz) tuy nhiên dùng Zigbee ở 2,4 GHz cho phép băng thông tương đối rộng, _rất_ ít nhiễu và có nhiều tính năng cao cấp khác do nó là chuẩn quốc tế.
_ Giá thành phần cứng nếu tự chế tạo chỉ vào khoảng 30-50 $ tùy theo phần I/O. Ví dụ nếu cần 16 kênh ADC 16 bít và 4 kênh DAC 12 bit thì tổng giá phần cứng chỉ khoảng 50$. Tất nhiên chưa tính tới công lập trình.

HaiAu2005
28-08-2009, 10:33 PM
Theo bqviet như vậy thì việc lập bảng I/O và thiết trí sử dụng host PC và target PC/104 cùng việc lập trình làm phần mềm ở VN không đắt lắm. Nếu vậy liệu có phát triển sản phẩm cạnh tranh được với mấy hãng sau không:

1. RTD Embedded Technologies: http://www.rtd.com/
2. Opal-RT: http://www.opal-rt.com/

Bài toán về giao tiếp host PC (máy tính thường dùng Windows) và target PC (PC/104, QNX) mà mình nói tới là cần thực hiện việc kết nối và thiết trí cụ thể như thế nào, cần những thứ gì và software gì, việc này sử dụng các loại thiết bị và phần mềm đã có sẵn (hoặc có thể mua những thứ đã có sẵn rồi chứ không thiết kế từ từng con điện trở, ICs hay từng con PIC), nghĩa là thực hành làm phần kết nối thiết trí cấu hình chứ không đi vào khâu thiết kế chế tạo bảng I/O và lập trình như bqviet nói. Ví dụ:

1. Mua cái wireless cards cho cả hai host PC và target PC, rồi thiết trí thế nào để chúng kết nối giao tiếp được với nhau. Thiết trí IP address của chúng thế nào và thử thế nào để biết chúng liên hệ trao đổi dữ liệu với nhau.
2. Trong target PC thì nạp phần mềm gì? Và nạp chúng như thế nào?
3. Trong host PC thì cần nạp phầm mềm gì và thiết trí chúng như thế nào?
4. Sau khi đã nạp xong phần mềm cho cả hai host PC và target PC rồi thì sẽ lập trình và thử như thế nào.
v.v...

HA

HaiAu2005
29-08-2009, 01:04 AM
Hãng sản xuất có lẽ không muốn cung cấp thêm thông tin gì về cái bảng giao diện USB của họ, và chắc là sẽ không cung cấp mã nguồn.

Về PIC đây: Trong trường hợp không có mã nguồn, liệu mở bộ giao tiếp USB ra, tìm hiểu nó và nhận dạng mấy con microcontrollers trong đó liệu có giải quyết được việc gì không?

Tình hình này có khi phải mua một cái máy PC dùng Linux thử xem sao. Windows xem ra cũng có nhiều hạn chế trong nhiều ứng dụng.

Hải Âu

HaiAu2005
31-08-2009, 07:48 PM
R&D của Falleaf hay VE của bác bqviet sản xuất bảng giao diện USB có chức năng sau (chỉ thực hiện việc giao tiếp dữ liệu, phần điều khiển do người dùng thực hiện bằng Visual Studio):

1. Có 8 Analog Input Channels: -10/+10V (4 kênh differential)
2. Tối thiểu 3 Analog Output Channels: -10/+10V
3. Hai cổng điều khiển Relay
4. Có 8 cổng digital (DIO lines)
5. Phần mềm: device driver dùng cho Windows và phần mềm Visual Studio
6. Tất nhiên có thêm hướng dẫn sử dụng (lập trình nhập/xuất dữ liệu, thiết trí v.v... có ví dụ mẫu) -> Dùng cho sinh viên không biết chút gì lập trình cũng có thể "tập sự" được.

thì giá thành khoảng chừng bao nhiêu? Theo như tôi hiểu thì bảng giao tiếp dữ liệu có những chức năng như trên không khó khăn lắm.

Nếu giả có thêm yêu cầu sau:

1. Có device driver hỗ trợ LabVIEW hoặc MATLAB/Simulink/Data Acquisition Toolbox (nhiều hãng sản xuất bảng giao diện đều có các device drivers hỗ trợ LabVIEW & MATLAB/Simulink ngoài phần mềm của họ).

thì liệu có thực hiện được không? Nếu thực hiện được thì giá thành sẽ bao nhiêu?

Hải Âu

bqviet
31-08-2009, 08:19 PM
Analog input và output thiết nghĩ nên bổ sung thêm yêu cầu bởi nó ảnh hưởng đáng kể tới giá thành
_ Độ phân giải: Analog input 10 bit hoặc 12 bit khác nhau đáng kể, analog output thông thường yêu cầu độ phân giải 10 bit, tăng lên một chút cũng khác nhiều.
_ Thời gian lấy mẫu đối với đầu vào analog input.
_ Thời gian cập nhật đối với analog output.

Giá thành ước lượng thô vào khoảng 5M VND.:D

HaiAu2005
31-08-2009, 11:18 PM
Nếu thêm một số yêu cầu nữa như độ phân giải kênh input đạt tầm 12 bit đến 16 bit, và output đạt 12-14 bit cùng tốc độ lấy mẫu chừng 200 kS/s tới chừng 500 kS/s chẳng hạn thì giá thành sẽ tăng lên, chắc tới gần 10M?

Theo giá của bqviet ước lượng thô vậy thì đối với sinh viên mà tự trang trải cho một đồ án thì chắc cũng vẫn còn đắt. Trường học trang bị những thiết bị Made in Vietnam như vậy tôi nghĩ có thể phù hợp.

Còn R&D (R&P) ước lượng giá thế nào đây?

HA

bqviet
01-09-2009, 12:29 AM
Công ty của F tên là R&P (Reliable and perfect) là đại lý chính thức của Microchip; thiết kế trên nền PIC chắc bên này là vô địch, bqviet cạnh tranh không lại.

Ước lượng tinh hơn 1 chút:
_ 8 kênh vào tương tự vi sai (full-differential ADC) độ phân giải 12 bit
_ Tần số lấy mẫu 250 kS/s
_ Có thể trade-off giữa tần số lấy mẫu và độ phân giải (tăng cái này thì giảm cái kia và ngược lại) tới độ phân giải tối đa 17 bit
_ 8 kênh ra tương tự (DAC) độ phân giải 12 bit độc lập
_ Tần số cập nhật 200 KHz
_ Có thể trade-off giữa tần số cập nhật và độ phân giải
_ Điện áp đầu vào +/- 2V, +/- 5V hoặc +/- 10V
_ 8 kênh ra hai trạng thái relay và 8 kênh vào hai trạng thái cách ly quang, hoặc 2 kênh relay và 8 kênh DI/DO không cách ly.
_ Kết nối máy tính qua cổng USB, driver tự viết chạy trên Windows (Visual C++) và Linux (GCC).
_ Giá 4tr8, 2 tuần. Cung cấp toàn bộ sơ đồ nguyên lý và mã nguồn driver.

Như thế đã ổn chưa ạ ?:D

HaiAu2005
01-09-2009, 06:35 PM
Cái bảng giao diện USB bác bqviet trình bày có vẻ tạm ổn cho đó, tôi muốn đặt và dùng thử. Đại khái, tôi muốn dùng thử sản phẩm từ Việt Nam (như tôi đã mua thử sản phẩm của Thiên Minh ở Sài Gòn ... no comments vì vẫn chưa chạy được (nạp phần mềm vào mấy PCs ở đây đều không được!)). Bác bqviet nhắn bác LMĐ ứng tiền trước cho cái bảng giao diện USB đó, làm xong gửi tôi dùng thử xem sao. Nếu bác LMĐ không ứng tiền trước, cho tôi địa chỉ chuyển tiền hoặc địa chỉ liên lạc, tôi sẽ nhờ người nhà đến giao tiền và nhận hàng rồi gửi cho tôi... kamome.seagull@gmail.com.

R&P nếu làm bảng này giá ngang bằng VE (đại khái trên dưới 5 Mil, có thêm hướng dẫn bằng English cho mấy chú sinh viên Aussie của tôi dùng thì tốt), tôi cũng đặt luôn để dùng thử và sẽ dùng cho các bài tập ứng dụng trên www.dieukhien.net.

Hải Âu

bqviet
01-09-2009, 11:17 PM
Vậy thì bắt đầu làm thôi, tính thời gian từ 2-9. Nói chung ở đơn hàng lẻ thì giá thành linh kiện, nói một cách thẳng thắn, chiếm tỷ lệ tương đối nhỏ. Làm xong nộp bài, thử nghiệm rồi tính công xá vẫn chưa muộn mà. Cảm ơn anh đã cho một cơ hội thử hợp tác.

HaiAu2005
02-09-2009, 05:19 AM
Bác bqviet cứ xúc tiến đi. Có gì liên lạc tới kamome.seagull@gmail.com cho tôi biết chi tiết.

Về việc hợp tác, trước đây tôi và bác LMĐ cũng có bàn nhiều về việc phát triển thiết bị điều khiển cho tầu biển. Nếu VE vẫn tiếp tục có chương trình R&D cho việc phát triển sản phẩm mới, tôi nghĩ sẽ có thể tìm được giải pháp nào đó, và có thể xúc tiến một số dự án hợp tác nghiên cứu. Tôi có trao đổi ở địa chỉ sau:

http://www.dieukhien.net/vn/discuss.php?thid=1137

Tôi nghĩ những dự án nghiên cứu phát triển không những có tác dụng giúp cho công ty phát triển mà còn có thể có cơ hội làm được sản phẩm mới. Tất yếu việc hợp tác cần phải được thực hiện theo nhiều cách: kết hợp giữa công ty, đại học và các đối tác quan tâm khác vì mỗi dự án đều cần có những nguồn nhân lực và kinh phí nhất định, nếu không có không thể thực hiện được.

Thêm nữa, tôi đang cần tìm một số người có khả năng và nhiệt tình với lĩnh vực điều khiển tầu/phương tiện ngầm làm nghiên cứu (sau đại học hoặc làm PhD, làm nghiên cứu 100%, không có coursework), tìm các giải pháp cho điều khiển phương tiện ngầm, nếu chỗ bác LMĐ mà có ai đó muốn làm thì thử một vài cơ hội xem sao - vì tôi biết chỗ bác ấy có một số "đệ tử" có chuyên môn & background về điện điện tử + tầu biển thì sẽ dễ dàng hơn. Vào địa chỉ sau xem thêm thông tin:

http://www.vinamaso.net/forum/viewtopic.php?f=190&t=2818&start=20

Về học bổng, tôi nghĩ có thể có một trong giải pháp sau:

1. Học bổng của VN: chương trình này vẫn cấp hàng năm, nếu các bác xin được học bổng này có thể sang Australia học được.

2. Học bổng Australia, liên lạc với tôi kamome.seagull@gmail.com để biết thêm chi tiết và thủ tục nộp đơn xin học bổng: cơ hội học bổng này thì có nhưng không nhiều, thực sự phải là một cuộc competition với những đơn khác.

3. Các học bổng khác: tìm thêm một số nguồn học bổng khác, hoặc đại khái có thể có hình thức kết hợp với tư phí qua Australia học trong thời gian học có thể xin được học bổng từng phần. Giải pháp này thì khá vất vả.

Điều kiện cơ bản: Anh văn IELTS 6.5, hoặc TOEFL tương đương.

Tại đây có nhiều thiết bị thí nghiệm như mô hình tầu, towing tank (với các thiết bị phụ trợ khá hiện đại), model test basin (có hệ thống tạo sóng nhân tạo), cavitation tunnel v.v.... Nếu các bác có cơ hội qua làm nghiên cứu sẽ có cơ hội sử dụng các thiết bị chuyên dụng cho việc nghiên cứu phát triển tầu thủy mà VN đang sắp có. Kết hợp thêm những giải pháp giao tiếp dữ liệu sẽ có khả năng có thể làm được ra sản phẩm vào thời kỳ sau khi học xong.

Thêm thông tin:

http://www.dieukhien.net/vn/discuss.php?thid=3046&pagenum=1

Hải Âu

HaiAu2005
02-09-2009, 10:02 PM
Tin vui: sau một hồi trao đổi ý tưởng với hãng sản xuất thiết bị thí nghiệm & bảng giao diện USB thì họ đã cung cấp mã nguồn chạy chương trình điều khiển của họ, đồng thời họ cho biết đang xúc tiến việc phát triển device driver để dùng với LabVIEW & có thể với phần mềm hãng thứ 3 như MATLAB/Simulink. Tôi gợi ý làm mô phỏng các hệ điều khiển và phát triển thêm bài tập thực hành cho sinh viên bằng LabVIEW, họ còn hứa họ cũng đang làm mô phỏng và thử nghiệm kiểm chứng kết quả, khi xong họ gửi cho để dùng thử. Vậy là sau này sẽ có thêm nhiều "đồ chơi" nữa.

Bác bqviet có nghĩ rằng các bác sẽ có thể viết được device driver để chạy bảng giao diện USB bác đang làm bằng LabVIEW và MATLAB/Simulink không? Tôi nghĩ vụ này sẽ có thể làm được đó, nhưng để đến giai đoạn sau.

Hải Âu

bqviet
03-09-2009, 12:37 AM
Tin vui: sau một hồi trao đổi ý tưởng với hãng sản xuất thiết bị thí nghiệm & bảng giao diện USB thì họ đã cung cấp mã nguồn chạy chương trình điều khiển của họ, đồng thời họ cho biết đang xúc tiến việc phát triển device driver để dùng với LabVIEW & có thể với phần mềm hãng thứ 3 như MATLAB/Simulink. Tôi gợi ý làm mô phỏng các hệ điều khiển và phát triển thêm bài tập thực hành cho sinh viên bằng LabVIEW, họ còn hứa họ cũng đang làm mô phỏng và thử nghiệm kiểm chứng kết quả, khi xong họ gửi cho để dùng thử. Vậy là sau này sẽ có thêm nhiều "đồ chơi" nữa.

Bác bqviet có nghĩ rằng các bác sẽ có thể viết được device driver để chạy bảng giao diện USB bác đang làm bằng LabVIEW và MATLAB/Simulink không? Tôi nghĩ vụ này sẽ có thể làm được đó, nhưng để đến giai đoạn sau.

Hải Âu


Đúng là có thể làm được, nhưng vấn đề ở đây là xung đột về ideal; bqviet sẵn sàng viết thêm phần driver để card/thiết bị chạy được với Scilab/Scicos, Comedi, ... và sẵn sàng mở thiết kế nguyên lý nhưng hầu như không có ý định làm cho Matlab/Simulink hay Labview hoặc bất kỳ phần mềm thương mại độc quyền nào khác. Đây là chính sách chung ngay cả công việc ở VE, dù sao cũng vẫn rào thêm rằng nếu khách hàng trả hậu thì lại là chuyện khác.:D

HaiAu2005
03-09-2009, 12:44 AM
Đúng là có thể làm được, nhưng vấn đề ở đây là xung đột về ideal; bqviet sẵn sàng viết thêm phần driver để card/thiết bị chạy được với Scilab/Scicos, Comedi, ... nhưng khó có thể làm cho Matlab/Simulink hay Labview hoặc bất kỳ phần mềm thương mại độc quyền nào khác.

Chắc bác "dị ứng" với các phần mềm thương mại độc quyền. Vậy thì bác cứ theo hướng với Scilab/Scicos, Comedi... mà không cần phải làm cho MATLAB/Simulink hoặc LabVIEW nữa. Hướng này lại càng sẽ cho thêm nhiều "đồ chơi" hơn nữa!

Hải Âu

bqviet
03-09-2009, 12:50 AM
Bác bqviet cứ xúc tiến đi. Có gì liên lạc tới kamome.seagull@gmail.com cho tôi biết chi tiết.

Về việc hợp tác, trước đây tôi và bác LMĐ cũng có bàn nhiều về việc phát triển thiết bị điều khiển cho tầu biển. Nếu VE vẫn tiếp tục có chương trình R&D cho việc phát triển sản phẩm mới, tôi nghĩ sẽ có thể tìm được giải pháp nào đó, và có thể xúc tiến một số dự án hợp tác nghiên cứu. Tôi có trao đổi ở địa chỉ sau:

http://www.dieukhien.net/vn/discuss.php?thid=1137

Tôi nghĩ những dự án nghiên cứu phát triển không những có tác dụng giúp cho công ty phát triển mà còn có thể có cơ hội làm được sản phẩm mới. Tất yếu việc hợp tác cần phải được thực hiện theo nhiều cách: kết hợp giữa công ty, đại học và các đối tác quan tâm khác vì mỗi dự án đều cần có những nguồn nhân lực và kinh phí nhất định, nếu không có không thể thực hiện được.

Thêm nữa, tôi đang cần tìm một số người có khả năng và nhiệt tình với lĩnh vực điều khiển tầu/phương tiện ngầm làm nghiên cứu (sau đại học hoặc làm PhD, làm nghiên cứu 100%, không có coursework), tìm các giải pháp cho điều khiển phương tiện ngầm, nếu chỗ bác LMĐ mà có ai đó muốn làm thì thử một vài cơ hội xem sao - vì tôi biết chỗ bác ấy có một số "đệ tử" có chuyên môn & background về điện điện tử + tầu biển thì sẽ dễ dàng hơn. Vào địa chỉ sau xem thêm thông tin:

http://www.vinamaso.net/forum/viewtopic.php?f=190&t=2818&start=20

Về học bổng, tôi nghĩ có thể có một trong giải pháp sau:

1. Học bổng của VN: chương trình này vẫn cấp hàng năm, nếu các bác xin được học bổng này có thể sang Australia học được.

2. Học bổng Australia, liên lạc với tôi kamome.seagull@gmail.com để biết thêm chi tiết và thủ tục nộp đơn xin học bổng: cơ hội học bổng này thì có nhưng không nhiều, thực sự phải là một cuộc competition với những đơn khác.

3. Các học bổng khác: tìm thêm một số nguồn học bổng khác, hoặc đại khái có thể có hình thức kết hợp với tư phí qua Australia học trong thời gian học có thể xin được học bổng từng phần. Giải pháp này thì khá vất vả.

Điều kiện cơ bản: Anh văn IELTS 6.5, hoặc TOEFL tương đương.

Tại đây có nhiều thiết bị thí nghiệm như mô hình tầu, towing tank (với các thiết bị phụ trợ khá hiện đại), model test basin (có hệ thống tạo sóng nhân tạo), cavitation tunnel v.v.... Nếu các bác có cơ hội qua làm nghiên cứu sẽ có cơ hội sử dụng các thiết bị chuyên dụng cho việc nghiên cứu phát triển tầu thủy mà VN đang sắp có. Kết hợp thêm những giải pháp giao tiếp dữ liệu sẽ có khả năng có thể làm được ra sản phẩm vào thời kỳ sau khi học xong.

Thêm thông tin:

http://www.dieukhien.net/vn/discuss.php?thid=3046&pagenum=1

Hải Âu


Thông tin của anh về học bổng rất hấp dẫn, nhất là với các ứng viên tuyển dụng vào VE.:) Thực tế hiện giờ những người thạo cả điện - điện tử, chuyên môn tàu thủy, ngoại ngữ ở phía Bắc có thể nói chỉ đếm trên đầu ngón tay (cùng lắm là cả ngón chân:D). Tuyển dụng khó khăn một, giữ người khó gấp nhiều lần. Lương cao là một chuyện, nhưng cơ hội có học bổng du học là điều tốt để thu hút nhân lực.

HaiAu2005
03-09-2009, 10:39 PM
Thông tin của anh về học bổng rất hấp dẫn, nhất là với các ứng viên tuyển dụng vào VE.:) Thực tế hiện giờ những người thạo cả điện - điện tử, chuyên môn tàu thủy, ngoại ngữ ở phía Bắc có thể nói chỉ đếm trên đầu ngón tay (cùng lắm là cả ngón chân:D). Tuyển dụng khó khăn một, giữ người khó gấp nhiều lần. Lương cao là một chuyện, nhưng cơ hội có học bổng du học là điều tốt để thu hút nhân lực.

Kể cũng tiếc, thông báo mấy chỗ từ đầu năm đến nay, không thấy đơn xin học bổng nào từ VN, năm nay mấy đơn nộp xin học bổng thấy toàn bọn Trung Đông, ngoài kết quả học tập thấy chúng rất khá tiếng Anh.

Hải Âu