Energia – Bài 5: Vẽ đồ thị với TIVA C và MATLAB

Trong bài này mình sẽ hướng dẫn các bạn cách để giao tiếp gửi dữ liệu từ TIVA C lên MATLAB, ở đây mình sử dụng thông tin khoảng cách đọc từ cảm biến siêu âm SR04 để hiển thị biểu đồ trên MATLAB.

Giới thiệu

Trong những bài viết trước, mình có thực hiện một số giao tiếp giữa TIVA và máy tính thông qua Processing, tuy nhiên với những yêu cầu về hiển thị, phân tích, xử lý các dữ liệu từ các cảm biến thì Processing chỉ làm được chức năng hiển thị đơn giản. Với MATLAB chúng ta có thể nhận được gói dữ liệu với thông tin từ nhiều cảm biến, vẽ và quan sát được nhiều đồ thị giá trị cùng một lúc, ngoài ra với sức mạnh tính toán nhanh chóng sẽ giúp giảm thiểu được rất nhiều thời gian cho các thuật toán phức tạp. Công việc giờ chia làm 2: TIVA thu thập dữ liệu và MATLAB xử lý/ hiển thị dữ liệu. Chúng ta cùng tìm hiểu xem cách làm như thế nào ?

Chuẩn bị

Phần cứng

  • TIVA C Launchpad
  • Dây nối
  • Cảm biến siêu âm SRF04

Phần mềm

  • Energia IDE
  • Matlab (mình dùng bản  2016)

Sơ đồ chân của TIVA

tm4c123pinmap

Đọc dữ liệu cảm biến siêu âm

Trước tiên chúng ta cần tìm hiểu một chút về cách đọc dữ liệu từ cảm biến siêu âm dùng TIVA C, ở đây mình sẽ khóa dòng lệnh  Serial.write(distance); và mở dòng Serial.println(distance); để debug qua cổng COM.

Chương trình TIVA C

Sau khi mở Terminal lên và ấn nút SW1 trên TIVA để kích hoạt thì ta có kết quả như sau

sonar_energia

Gửi và hiển thị dữ liệu lên Matlab

Coi như đã xong bước đọc dữ liệu về khoảng cách, giờ là hiển thị dữ liệu này lên MATLAB

Chương trình MATLAB

Kết quả sau khi đã nạp chương trình xuống TIVA, chạy script của MATLAB và ấn nút SW1 thì dữ liệu sẽ được hiển thị lên đồ thị

matlab_sonar_result

Tạm kết

Trong bài viết mình tập trung chủ yếu về cách để truyền dữ liệu từ TIVA lên MATLAB và hiển thị, do đó những vấn đề như giá trị đọc chưa chính xác hay có sai số xin tạm bỏ qua. Với cách hiện dữ liệu như trên bạn hoàn toàn có thể áp dụng được với Arduino mà không cần cài thêm add-on Arduino cho Matlab nữa. Hi vọng bài viết sẽ giúp cho các bạn có thêm kiến thức để làm ra nhiều thứ hay ho hơn nữa.

 

Leave a Reply

avatar

Website này sử dụng Akismet để hạn chế spam. Tìm hiểu bình luận của bạn được duyệt như thế nào.

  Subscribe  
Notify of