Bác NgoHaiBac có thể viết toturial về Lập trình M-file và toolbox neural cho anh em tham khảo không?
Thanks!
Thông báo
Collapse
No announcement yet.
Lập trình GUI trong Matlab
Collapse
This is a sticky topic.
X
X
-
cái này coi bộ hay ah nha!!!!!!!
cang ngày giao diện càng nhiều tính năng hơn
Cảm ơn Hải Bắc!
Leave a comment:
-
ControlDCMotor v3.1
Các bác thân.
Bận quá mới làm xong mấy cái giao diện để hiện lên khi ấn vào menu nên chưa up hoàn chỉnh được. Nhưng cũng xin tối ưu cho chương trình trước về cách nhập hàm truyền đơn giản hơn rất nhiều.
Các bác chịu khó đọc lại mã nha. Dưới đây là hình minh họa và file đính kèm.
Chúc các bạn thành công.Last edited by ngohaibac; 26-05-2006, 08:25.
Leave a comment:
-
Chết thời gian này bận quá. Có lẽ phải mấy ngày nữa mới có bài mới giới thiệu cho các bạn.
Các bạn chịu khó luyện với mấy chiêu ở trên nha. Mấy nữa tôi up lên tiếp.
- 1 like
Leave a comment:
-
hic hic,mình cũng học điều khiển tự động mà chẳng rành về cái gì cả,xấu hổ quá,cái gì cũng phải hỏi bạn Bắc cả!!!!!
Leave a comment:
-
Ừ có thể coi là như vậy. Mình học ngành điều khiển tự động BKHN Khoa điện - học tương đương với tự động hóa. Bên tự động hóa chuyên hơn bên mình về lĩnh vự tự động, còn bên mình thường sâu về mảng lí thuyết điều khiển tự động.
- 1 like
Leave a comment:
-
Bầu chọn cho luồng của bác Bắc 5 sao.
Chắc bác là dân tự động hóa rồi?
Leave a comment:
-
ControlDCMotor V3.0
Chào các bạn, nay tôi xin giới thiệu cho các bạn một cách tạo menu và sử dụng một temp để làm trung gian để tạo dữ liệu cho đơn giản.
ở phiên bản trước chắc các bạn thấy rằng với cả 3 hàm Tranfer Fcn mà phải tạo tới 3 cái panel để điền thông số thì quả là rắc rối. Mình xin cải tiến thêm và dùng Temp là một popupmenu, thuộc tính String của nó làm nới chứa dữ liệu các tham số của hàm truyền của các hàm truyền 1,2,3. Khi bạn ấn vào nút Edit thì sẽ nhập thay đổi dữ liệu cho nó và nút biến thành Apply, bạn ấn vào nút đó để cập nhật. Thuộc tính String trong popupmenu là kiểu cell( trường) do đó để cập nhật bạn lấy thuộc tính String sau đó thay đổi từng thành phần của biến này sau đó cập nhật trở lại. Còn nếu muốn lấy dữ liệu cũng tương tự mỗi thành phần trong cell này có kiểu String, ta dùng dấu {} để xâm nhập vào từng thành phần của nó:
VD:
Code:value= get(handles.Temp,'String'); a = value{1};
Còn tạo menu thì các bạn vào Tools-> menu editors. Sẽ có dialog mới mở ra. Các bạn kích vào nút New menu để tạo ra menu mới, sau đó thay đổi thuộc tính Label, Tag của nó. Còn muốn tạo menu con thì bạn select vào menu muốn tạo menu con sau đó kích trái chuột vào biểu tượng <-> trên toolbar để tạo thêm menu con tương tự như trên. Còn muốn thấy được các hàm Callback của nó bạn chọn menu tương ứng kích vào View, nên để mặc định là tự động tạo hàm callback. Sau đó viết code cho các hàm callback đó. Quả thật là nếu mà viết lại mã của những callback giống của các điều khiển khác thì chỉ cần copy -> paste là xong nhưng tôi xin giới thiệu cho các bạn cách để gọi một hàm callback khác trong callback hiện tại:
Ví dụ: bạn muốn gọi hàm callback : function SimulateButton_Callback(hObject, eventdata, handles)
Thì chỉ cần thay hObject thành handles.SimulateButton là xong.
Còn tại sao mà ấn vào nút Edit lại thành Apply thì chỉ là thay đổi thuộc tính String trong callback của nó. Quan trọng là khi ấn vào nút Apply thì mới cập nhật dữ liệu. Tôi thông qua một biến Bool là value{10} trong String của Temp.
Các menu tôi mới chỉ viết code cho các menu Exit, About, Run.
Các bạn ấn vào popupmenu gần nút Edit để xem các thông số của các hàm truyền tương ứng.
Tôi sẽ hoàn thành việc phát triển cho ứng dụng này làm việc với các form khác nhau sau. Nói chung là cũng phức tạp hơn chưa các bạn. Có giống với VB chưa.
Chào các bạn. Chúc thành công.
Last edited by ngohaibac; 31-12-2005, 15:49.
- 1 like
Leave a comment:
-
Các bạn thân mến, mai tôi sẽ hướng dẫn các bạn làm quen với menu, sử dụng nhiều form khác nhau trên cùng một ứng dụng. Phát triển tiếp tục từ ControlDCMotor và DongcoDC ở trên.
Các bạn lưu ý là muốn chạy được phải đánh trong command đúng tên của .m file chứa những hàm callback của ứng dụng.
- 1 like
Leave a comment:
-
Mình thực sự cảm ơn Bắc nhiều lắm!!!!!!!!
Với khả năng hạn hẹp của mình thì còn nhiều thứ mình chưa biết,cảm ơn bạn đã chỉ dẫn tận tình.
Mình cũng muốn gởi bài cho diễn đàn,nhưng chưa làm được gì hoàn hảo cả!!!!!!!!!
Mình sẽ cố gắng vậy!!!!!!!
Leave a comment:
-
Động cơ một chiều
- Các bạn lưu ý: khi làm lại giao diện mà lại copy lại y nguyên mã lại không chạy sẽ báo lỗi là vì với mỗi điều khiển thì sẽ có một tên riêng trong thuộc tính tag của nó( ứng với thuộc tính Name trong VB) để các bạn làm việc với điều khiển. Nên các bạn khi download chương trình về cần đọc kĩ mã nhé. Cần phải biết hàm đó viết cho điều khiển nào, lấy thông tin từ điều khiển gì.
-Thứ hai là các bạn phải đặt tên .mdl khác với tên của cái gui tức là đuôi .m đó. Vì cả 2 file này đều có thể chạy được khi bạn gõ tên trong command của workspace nhưng file đuôi .mdl( simulink) được ưu tiên hơn nên đó là lí do tại sao mà khi đặt tên giống nhau mà lại chỉ có thể chạy được file .mdl thôi.
- Các bạn không thể chạy ứng dụng bằng cách di chuột đến file .fig trong curent directory được vì nó chạy đây đơn thuần là chạy một file hình ảnh thôi. Nó sẽ không thể liên kết được với file .m chứa mã chương trình, các hàm callback đo đó sẽ báo lỗi ngay. Các bạn có nhiều cách làm: gõ lệnh trong command trùng với tên của file .m đó, mở file .m đó rồi ấn phím tắt F5 hoặc vào Debug-> Run, ấn vào biểu tượng trên thành toolbar hình mũi tên trỏ xuống đó.
Mình xin tiếp tục hướng dẫn các bạn làm thêm một số phần trong giao diện điều khiển mô phỏng Simulink bằng GUI.
Tôi sẽ thêm vào đó popupmenu để các bạn hiển thị màu của đường đặc tính và checkbox để khi cần thì giữ lại hình để so sánh, khi không thì thôi. Thêm cả thêm thuộc tính cho các transfer fcn.
Để có thể làm việc đối với popupmenu thì bạn nên thêm sẵn cho nó trong thuộc tính String của nó ngay khi thiết kế: đánh thành nhiều dòng bao gồm:
Blue, Green,Red,...
Sau đó khi người dùng chọn một trong các màu đó thì sẽ có giá trị lấy từ thuộc tính Value của điều khiển này. Các bạn dùng thuộc tính này để quết định xem đó là màu gì bằng cách dùng Switch trong PlotButton_callback:
Code:ColorIndex = get(handles.popupmenu1,'Value'); switch ColorIndex case 1, a = 'b'; case 2, a = 'g'; case 3, a = 'r'; case 4, a= 'c'; case 5, a= 'm'; case 6, a= 'y'; case 7, a= 'k'; otherwise, a= 'k'; end
Do đó lấy giá trị này:
Code:if get(handles.checkHold,'Value') == 0 hold off; end
Không set nó thành off thì nó vẫn giữ nguyên.
----- Chúc các bác thành công.
Last edited by ngohaibac; 31-12-2005, 15:46.
- 1 like
Leave a comment:
-
Nhờ có Hải Bắc mà mình có thể hiểu cách thức thực hiện GUI cho mô hình Simulink(tuy còn hơi non nớt!!!!)
Bộ Help của Matlab7.0 quả là rất phong phú,nó cũng có vd đề cập đến vấn đề này nhưng mình đọc mà chẳng hiểu gì cả(vì mình mới tiếp cận với Matlab nên kiến thức về nó còn rất hạn chế)
Bài viết của Ngô Hải Bắc rất dễ hiểu,mình thực sự cảm ơn sự quan tâm về vấn đề này
Cảm ơn Ngô Hải Bắc nhiều nhiều,mong bạn đóng góp nhiều hơn nữa cho diễn đàn,chia sẻ những kiến thức mà bạn tích tũy được cho bạn bè cùng biết nha!!!!!!!!!!!!!!
Leave a comment:
-
Cảm ơn các bạn đã đọc bài viết của mình. Mình viết những bài viết này trên cơ sở tham khảo bộ Help của Matlab. Với bộ help này quả thật là chi tiết, có cả ví dụ, cách dùng như là MSDN của Microsoft vậy. Với một mục đích cụ thể cho công việc cần làm, mình nghĩ là các bạn sẽ biết cách tìm hiểu các điều mình cần trong bộ Help này. Không phải là đọc tất cả mà chỉ đọc cái mình cần, nếu không hiểu vấn đề nào thuộc những phần khác thì bạn lại quay sang đọc cái đó để hiểu rõ, rồi lại trở lại vấn đề đang đọc. Với cách đọc tài liệu như thế mình nghĩ là sẽ nhanh đạt mục đích hơn. Mình viết chương trình điều khiển động cơ trên cơ sở câu hỏi của bạn SonIC gửi đến email của mình. Các bạn có câu hỏi, mục đích gì thì cứ đưa ra diễn đàn này để chúng ta cùng giải quyết.
Mình sẽ tiếp tục giới thiệu cho các bạn một số hướng dẫn cụ thể để lập trình cho GUI liên kết với các ứng dụng khác, điển hình là bộ mô phỏng hệ thống Simulink.
Cảm ơn các bạn.Last edited by ngohaibac; 31-12-2005, 15:45.
- 1 like
Leave a comment:
-
Trân trọng cảm ơn Ngô Hải Bắc về bài viết này.
Tôi đã copy bài viết này sang diễn đàn picvietnam, tại địa chỉ:
http://picvietnam.com/showthread.php?p=1190#post1190
Tôi trích các bài viết của bạn, và copy không sửa chữa toàn bộ bài viết, ngoài ra cung cấp đầy đủ thông tin về tác giả cũng như source tìm được.
Xin chân thành cảm ơn bạn đã đóng góp cho các sinh viên một bài viết rất hay và mang tính hướng dẫn cao.
Chúc vui.
Leave a comment:
Bài viết mới nhất
Collapse
-
Trả lời cho Hỏi về mạch công suất bị dò DCbởi vandoanĐiện áp ở A và C được ghim bởi Transistor Q8. chuyện áp ra loa + hay - là do các trans khác bị chập chập bên nào thì thay bên đó.
-
Channel: Điện thanh
hôm nay, 12:00 -
-
bởi chinhnguyen9Sực nhớ dòng cân bằng có dạng xung vuông đối xứng, nghĩa là có thể đo bằng đồng hồ Ampe kep. Nên tôi đo test lại, và quả là đo được bình thường với các số liệu trong hình 1.
Qua kết quả này ta thấy mạch này tiên tiến và hửu dụng, nổi bậc ở chổ dung lượng từ...-
Channel: Hướng dẫn sử dụng diễn đàn
hôm nay, 07:10 -
-
bởi dinhthuong92Cảm ơn bác đã chia sẻ nhiều thí nghiệm thực tế.
Về mạch cân bằng cells pin thì theo cá ngân em, nó chỉ có chức năng bảo vệ quá xả và quá nạp cho các cell thôi. Tức là bất kì cell nào trong khi xả mà có áp thấp nhất và bằng...-
Channel: Hướng dẫn sử dụng diễn đàn
18-04-2024, 21:07 -
-
bởi jigokushoujoCó anh chị nào có thể cho em 1 mạch chống ngược cực, chập mạch, khi bị chạm mạch hay ngược cực thì nó sẽ tự động ngắt nguồn,khi không còn chạm thì nó sẽ đóng nguồn lại bình thường. Em có dùng nguồn 12V 75A từ ắc quy . Em cần chụi...
-
Channel: Điện tử dành cho người mới bắt đầu
18-04-2024, 18:24 -
-
bởi chinhnguyen9Tôi nghi ngại về sự hiện diện của điện trở 0,1R trong mach test có thể làm sai lạc và méo mó hoạt động của mạch. Sau khi tháo bỏ điện trở trên test lại thì thấy hoạt động cân bằng tích cực hơn rất nhiều và sờ thấy các most fet của...
-
Channel: Hướng dẫn sử dụng diễn đàn
18-04-2024, 15:01 -
-
bởi chinhnguyen9Test module cân bằng chủ động kiểu Flying Capacitor Balancing 4s 6A TQ
Hình thức board mạch có vẻ ổn. Hình 1 mặt trên và mặt dưới
Hình 2
Lắp bài test với 3 cell 32-650 (4000mAh) với các mức điện áp trong dòng thứ 2 cell số 5 là pin lion 10Ah để tạo độ...-
Channel: Hướng dẫn sử dụng diễn đàn
18-04-2024, 11:26 -
-
bởi chinhnguyen9Hính 1 Sản phẩm board cân bằng acquy Minh Quang
Hình 2 Sơ đồ nguyên lý hoạt động
Hình 3 Sơ đồ đấu dây
Dùng 2 khối pin 32-650 khối 1 4s=13V và khối 2 5s =16V bắt nối tiếp, đấu dây đen B0 vào âm, nguồn B1 vào cọc 13V, và B2 vào cọc 29V,...-
Channel: Hướng dẫn sử dụng diễn đàn
18-04-2024, 10:51 -
-
bởi chinhnguyen91- Sơ khai là mạch cân bằng thụ động do hiệu quả của mạch này là rất kém nên ta vứt nó vào quá khứ.
2- Mạch cân bằng chủ động, so áp liền kề gồm 2 nhánh: dùng từ trường và dùng điện tích
3- Mạch cân bằng chủ động toàn nhóm.(flying capacitor balancing)
Trong mạch cân bằng chủ...-
Channel: Hướng dẫn sử dụng diễn đàn
16-04-2024, 08:48 -
Leave a comment: