1. THÔNG BÁO TUYỂN ADMIN DIỄN ĐÀN 2013
    Tìm kiếm nhà trọ - Ở ghép
    THÔNG BÁO BÁN ÁO SPKT.NET CHO THÀNH VIÊN DIỄN ĐÀN


    HÃY TÌM KIẾM Ở ĐÂY TRƯỚC KHI ĐẶT CÂU HỎI
    {xen:phrase loading}

Điều khiển Lực động cơ servo

Thảo luận trong 'Labview' bắt đầu bởi bmnhy, 16 Tháng một 2007.

  1. bmnhy Giảng Viên

    Số bài viết: 914
    Đã được thích: 0
    Điểm thành tích: 0
    Hi all of my friends!

    Trong quá trình làm hẹ thống Steer by wire, việc tạo ra lực tương ướng với vị trí vô lăng là việc cơ bản nhất nhằm tạo cảm giác lái cho tài xế!

    Vậy làm cách nào để tạo lực này?

    Đang hâm nóng chuyên mục Kiến thức chuyên ngành mình xin giới thiệu tiếp tục một ứng dụng mới của Labview đó là:
    tính năng chuyển đổi "DAC" nhằm tạo Lực ở trục ra của động cơ servo.

    Vẫn là bộ thí nghiệm dùng Card PCI 7356 và SoftNIMotion Assistant. (các bạn xem thêm bộ thí nghiệm nàu trong bài "Học Labvieww" ở trong chuyên mục này.
    Cụ thể:


    1. Bài toán đặt ra là Lậ trình cho Motor chuyển luôn có xu hướng quay lại vị trí này (tự động quay về - như khi các bạn lái xe hơi có trợ lực lái, khi buông vô lăng thì vô lăng tự trả về vị trí tự do (xe chạy thẳng). Hay như đặc tính của bất kỳ chiếc Honda (còn tốt) nào, khi bạn đang đk xe mà buông tay, nếu xe cân bằng thì Tay lái (Gi-đông) luôn có xu hướng nằm ở vị trí chính tâm xe (Tức tay lái tạo với trục dọc từ đầu xe tới thân xe là một dấu Thập), Yêu cầu thứ hai (chính là điểm chính của phần lập trình điều khiển là: khi ta dùng tay xoay rotor (trục động cơ - tương đương ta dùng tay xoay vô lăng) đến vị trí càng xa vị trí "O" (tăng góc xoay motor) thì tay bạn sẽ càng cảm giác có một lực nào đó chống lại sự xoay đó cũng tăng dần theo một hàm "Tuyến tính" ví dụ là: F(lực cảm nhận được)=k(hằng số)*Anpha (góc).

    2.Thực hiện:

    2.1 Sau khi dùng MAX để gán cho motor controller giá trị ban đầu (ngầm định là giá trị 0" tức ở vị trí này Encoder báo là đang ở vị trí O.

    2.2 Mở file>>new>> Blank VI>
    Tại cửa sổ block bạn chộn đối tượng sau:

    All functions>>NI measurement>> Motion>> Flex Motion>> Load DAC,
    Tương tự đường dẫn chọn các khối: Read Encoder Position, Enable ADCs,Set ADC Range.

    Sau đó chon các ngõ vào, ra của khối để tạo các control, constant, indicator (mục này rất dễ) bạn nhấp chuột phải và chọn vào Create>> constant, vv.

    Sau khi kết nối ID board (nếu không có board thì bạn phải giảlaapj board "mình sẽ viết chủ đề này thời gian tới", bạn chọn all functions>> Structure>> While loop và kéo cho hết tất cả các khối nằm trọn trong nó. Nhấp vào nút màu đỏ>>phải chuột>>create control.

    2.3 Cấp nguồn cho hệ thống, chọn giá trị lực cần tạo: chú ý: Giá trị DAC theo hệ nhị phân là từ:
    DAC Value (0) is the value sent to the DAC. The parameter range is -32,768 to +32,767, corresponding to the full ±10 V output range. (tức nó -32,768 đến +32,767 ngàn đó tương đưong với -+10 V. nên tùy số vòng quay vô lăng, độ phân giải của encoder mà bạn tính ra số vòng quay tương ứng với giới hạn điện thế, cũng là tương ứng với lực cảm nhận dc.

    Sau khi hoàn thành như trên, Bạn mở hệ thống lên và click "RUN", dùng tay xoay motor (ban đầu nó có giá trị =0 nên lực bằng không) càng xoay bạn sẽ càng thấy nó nặng cái tay hơn!

    Giao diện điều khiển:
    [IMG]

    Đây chỉ là phần cơ bản nhất của hệ thống Steer by wire vì nó còn phụ thuộc nhiều yếu tố khoác như: Tần số, đáp ứng ngõ ra (chủ yếu dùng thuật toán PID với những hệ số khuyếch đại phù hợp, kết hợp với phương pháp điều khiẻn dự đoán (phụ thuộc kinh nghiệm và sự m hiểu hệ thống của Kỹ sư)
    [IMG]

    Và đây là cái mô hình mình đã dùng làm thí nghiệm: có 1 motor gắn trong hộp (bên trong là driver và bộ nguồn cung cấp)
    Hình thứ 2 là sơ đồ điều khiển trong Labview. (Vị trí núm xoay trục motor nằm gần cây Tuộc vít)
    [IMG]

    Thân ái!
  2. bmnhy Giảng Viên

    Số bài viết: 914
    Đã được thích: 0
    Điểm thành tích: 0
    Đây là dự án khi mới tập tành LabVIEW từ 2006 (cũng gần 3 năm trước). Và kết quả của đề tài này sau này phát triển thêm nhiều ứng dụng! Từ đó tới nay, có lẽ hầu như tuần nào cũng phải đụng tới LabVIEW,....thực sự đây là một công cụ hỗ trợ học tập và nghiên cứu tốt!

    Lâu lắm mình mới vào box này đọc lại! Hiện tại mình có làm vài dự án liên quan tới điều khiển động cơ DC liên quan LabVIEW (Đặc biệt sử dụng các thuật tóan bền vững, thích nghi)

    Hình dưới đây là 1 ví dụ. Xem chi tiết tại đây
    Phần cứng làm dự án này có thể mua tại đây
    Đồng thời hiện tại mình cũng mở ra nhiều khóa học LabVIEW. Ai quan tâm các khóa học này có thể đăng ký tại HOCDELAM.ORG.


    Đây là bài tập nhỏ của tụi mình dùng LabVIEW
    Bài toán:
    1. Thiết kế các bộ điều khiển vị trí PID, Robust và Adaptive cho động cơ DC với tải thay đổi.
    2. Thiết kế các bộ điều khiển tốc độ PID, Robust và Adaptive cho động cơ DC với tải thay đổi.

    Tác giả: Ngô Hải Bắc & Nguyễn Bá Hải

    Công cụ sử dụng
    Phần cứng
    Động cơ DC Maxon 60 watt (download chi tiết thông số động cơ).
    Encoder 1024x4 xung/1vòng
    Card PIC
    UMI 7764
    Phần mềm
    LabVIEW 8.5
    MAX
    Signal processing toolbox

    Sơ đồ thí nghiệm
    [IMG]

    Video

Chia sẻ trang này