View Single Post
Old 29-08-2009, 05:17 PM   #7
falleaf
PIC Bang chủ
 
falleaf's Avatar
 
Tham gia ngày: May 2005
Bài gửi: 2,631
:
Send a message via Yahoo to falleaf
Ở các vấn đề trên đây, ta nên chú ý tới việc sử dụng Target PC. Những câu hỏi đặt ra là tại sao cần Target PC phải có hệ điều hành?

1) Hệ điều hành giúp ta những gì? Ta cần làm gì? Tại sao ta cần phải có hệ điều hành? Trong khi những bài toán ở đây chỉ là có giao tiếp: RS232, Ethernet, Wireless (có thể là Zigbee hoặc Sub GHz, loại khoảng 6,7 GHz dành cho quân sự tạm thời không bàn), sau đó chỉ là các cổng I/O điều khiển thời gian thực. Ở đây không có một lý do gì khiến ta cần thêm hệ điều hành cả.

2) Một số người cho rằng, khi có hệ điều hành trên máy thì có thể ta sẽ dùng các công cụ phát triển nhanh hơn và đơn giản hơn. Xin thưa rằng, nếu nói như vậy thì không hẳn đúng. Bởi nếu như kiểu hệ điều hành Windows 7 vừa ra đây, cả một cô bé chưa đụng máy tính lần nào cũng có thể tự cài đặt được, đó là một chuyện khác hẳn. Khi đó, các công cụ lập trình trên đó nó hầu như cho sẵn hết, tất cả các phần cứng đều tương thích với nó. Thế nhưng, để phát triển hệ điều hành trên Linux, trên một Embedded PC, không phải là ai cũng làm được. Có hàng trăm người có thể dùng PIC hoặc dùng bất kỳ con vi điều khiển khá khá nào để làm được những yêu cầu nêu trên: Giao tiếp (RS232, Ethernet, Wireless) và I/O (I/O, ADC, PWM), nhưng bảo họ cài Linux lên một cái máy tính nhúng thì không phải là việc đơn giản. Chưa kể với những thiết kế phần cứng khác nhau, yêu cầu sử dụng khác nhau, đưa một cái disto hay tự viết lại một cái core để đưa vào lại là một vấn đề hoàn toàn khác nữa.

Như vậy, so ra, nó đều có cái mà ta cần phải "cân, đong, đo, đếm" thật kỹ lưỡng.

3) Một cái máy tính nhúng đơn giản có thể lấy từ bất kỳ đâu, không nhất thiết là PC104 hay bất kỳ cái gì, và máy tính nhúng PC104 cũng không có nghĩa là nó có hệ điều hành. Những đời đầu tiên của PC104 cũng là dòng vi điều khiển 8-bit, 16-bit, hoàn toàn không có hệ điều hành trên đó. Đừng hiểu lầm chữ PC là có hệ điều hành. Chuẩn PC104 vẫn bao hàm cả việc sử dụng cho các dòng 8-bit, 16-bit, tới khi có dòng 32-bit phát triển lên, có chuẩn PCI, thì PC104 mở rộng chuẩn PC104+ để bổ sung PCI vào.

Với yêu cầu của bác Hùng, một con PIC32 thừa sức làm tất cả những điều đó, và không cần quá phức tạp như bác nghĩ

4) Trên PC chủ lúc này, bác thích xài Win hay Linux hay cái gì cũng được cả, miễn là bác vứt được lệnh điều khiển xuống để cho PC Target chạy, còn nó chạy thế nào thì không nhất thiết là phải có hệ điều hành mà là do người lập trình, tất cả đều là C chuẩn. Các giao tiếp mà các bác đề cập nó cũng chuẩn nốt luôn và rất phổ biến. Cuối cùng lại, chỉ là tiền mua Tools thôi. Cái tools nào cho các bác dễ dùng thì các bác xài.

5) Có người thì cho rằng sử dụng Matlab, Labview sẽ rất là nhanh và thuận tiện, các bo mạch có sẵn, chỉ cần làm Matlab rồi dịch ra, rồi đổ xuống phần cứng là chạy được. Nghe thì có vẻ có lý, nhưng đúng là từ xưa tới nay, Matlab hay Labview vẫn chưa ra khỏi được phòng thí nghiệm. Mãi tới năm 2008, nó có demo một số công nghệ và biểu diễn trực tiếp việc làm bộ điều khiển máy bay không người lái, sau đó đổ vào bo mạch và chạy thử thành công. Thực tế mà nói thì những ứng dụng như thế này cũng chưa phát triển nhiều. Xu hướng mới của Matlab và Labview chính là làm sẵn cả phần cứng luôn, sau này người ta mua về chỉ cần vẽ vẽ thử kết quả xong, đổ xuống MCU, DSC, DSP là xong, khỏi phải làm nhiều.

Có thể nó hay, có thể nó không hay, vẫn chưa biết được. Cả hai thằng đều đang chạy đua với nhau trong lĩnh vực này. Có lẽ tới một lúc nào đó, nó sẽ đủ nhiều Tools để mọi người dùng, nhưng bọn nó đang gặp vấn đề:

a) Trên thực tế, người ta dùng rất nhiều platform khác nhau (PIC, TI, Renesas, ARM,... kể đại ra cho vui vậy). Nếu nó chọn cách đi phục vụ hết các platform, nó sẽ mệt mỏi ngay, và những thằng sản xuất khác chưa biết sẽ support thằng nào? Lực ở đâu ra để support hết?

b) Nếu tập trung vào một thằng, thì hiện nay nó đang làm mạnh nhất cho TI, các dòng C6000 khá nhiều. Cũng mới năm 2008 thì nó bắt đầu có dsPIC trong đó. Vậy nếu tập trung cho một vài thằng, thì nó sẽ loại bỏ một phần những người dùng khác. Điều này đúng trong thời điểm hiện tại, khi mà sự chênh lệch lực lượng giữa các hãng đang là lớn, những đại gia là những đại gia. Tới một ngày đẹp trời, khi chip VIA chỉ bằng 1/100 chip loại khác, việc hỗ trợ của Matlab trở thành con muỗi đối với người dùng. Ý ở đây muốn nói là thế giới đang phẳng dần ra, các hãng nhỏ sẽ phát triển lên, chưa ai biết được chuyện gì vào hướng đi này.

c) Cũng nên kể tới những thằng như 20SIM, cái này ở Hà Lan khá mạnh, Matlab hay Labview sau này cũng sẽ có đối thủ cạnh tranh, nếu giá của nó rẻ hơn, người ta sẽ không cần đến những "bộ thí nghiệm" nữa, mà người ta chơi luôn "đồ thiệt".

Một vài ý trao đổi vậy.

KẾT LUẬN:
- Cần cái gì, tập trung vào giải quyết cái đó, đừng phân tích quá xa và yêu cầu cái platform quá phức tạp trong khi bài toán chỉ bé bằng con muỗi.
- Cái gì càng chuyên biệt, càng tốn tiền. Càng phụ thuộc, càng tốn tiền. Thấy rằng anh Hùng cứ đi kiếm mấy cái tools "chuẩn", nhìn vào thì rất ghê, nhưng anh càng kiếm theo hướng đó, anh càng mất đi sự lựa chọn, và anh càng tốn kém tiền để trả cho nó hơn.
- Bài toán của anh chỉ là cái bảng điều khiển, trong đó bọn nó cần là mô tả trên máy tính, sau đó đổ dữ liệu xuống target board (đừng nói là target PC có khi hiểu lầm), thì thực tế ra Matlab vẫn cho lập trình giao tiếp và truyền nhận dữ liệu. Anh có thể lập trình bằng ngôn ngữ khác để thực hiện thuật toán và truyền nhận dữ liệu mà anh cũng đã dự định làm bằng Visual .NET rồi đấy thôi. Thậm chí anh lập trình web rồi cho học viên của anh mỗi người một máy đăng nhập vào, rồi tự mô phỏng, rồi tự sinh code, rồi tự truyền xuống bo target, rồi xem "1" hệ thống duy nhất chạy và so sánh cả lớp với nhau, vì lúc đó học viên chỉ ngồi trên máy, vào web browser tạo thuật toán điều khiển, và xem cùng một cái phần cứng chạy, ai làm tốt hơn ai, đều có thể thấy "bằng mắt".
- Những cái kiểu như thế này, MATLAB và LABVIEW có mà chục năm sau cũng không làm được, tại nếu làm được thế thì nó lấy đâu ra nó bán hàng chục phiên bản cho máy sinh viên nữa, nó chỉ còn bán được có 1 bản cho máy của thầy. Nó ko làm vậy đâu, vậy anh có thể làm kiểu này để bán cho trường .

Chúc vui
falleaf vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn