Mục lục:

Động cơ tốc độ biến thiên được điều khiển nối tiếp: 6 bước
Động cơ tốc độ biến thiên được điều khiển nối tiếp: 6 bước

Video: Động cơ tốc độ biến thiên được điều khiển nối tiếp: 6 bước

Video: Động cơ tốc độ biến thiên được điều khiển nối tiếp: 6 bước
Video: Động cơ bước hoạt động như thế nào? | Học Nghề Kỹ Sư Điện & Điện Tử 2024, Tháng mười một
Anonim
Động cơ tốc độ biến đổi được điều khiển nối tiếp
Động cơ tốc độ biến đổi được điều khiển nối tiếp

Kiểm soát tốc độ của động cơ DC nhỏ mà không cần gì ngoài cổng nối tiếp trên máy tính của bạn, một MOSFET duy nhất và một số phần mềm tầm thường. (MOSFET và cổng nối tiếp tạo nên "điều khiển tốc độ"; bạn vẫn cần một động cơ và nguồn điện thích hợp cho động cơ đó; trong khi cổng nối tiếp có thể cung cấp điện áp để bật và tắt mosfet, nó có thể ' t cung cấp dòng điện cần thiết cho một động cơ điển hình.)

Bước 1: Nhìn vào mạch

Nhìn vào mạch
Nhìn vào mạch

Chúng ta sẽ thực hiện Điều chế độ rộng xung bằng cách sử dụng MOSFET nguồn kênh N chung được kết nối với chân truyền dữ liệu từ cổng rs232 của máy tính. Khi cổng nối tiếp không hoạt động, chân sẽ ở trạng thái "1", vào thời điểm nó được dịch sang rs232, giống như -12V (tùy thuộc vào trình điều khiển, nó có thể gần với -9V hoặc -5V) và bóng bán dẫn sẽ khá TẮT. Khi chúng tôi truyền các bit "0" trên cổng nối tiếp, chân rs232 sẽ đi đến + 12V hoặc lâu hơn, đủ để bật hầu hết các mosfet khá tốt.

Nếu chúng ta truyền nhiều dấu "0" liên tiếp, động cơ sẽ gần BẬT hoàn toàn và động cơ sẽ chạy nhanh. Nếu chúng ta truyền hầu hết các bit "1", động cơ sẽ chạy chậm hơn.

Bước 2: Lên dây

Dây nó lên
Dây nó lên

Vì chỉ có một thành phần duy nhất và chỉ một vài kết nối, bạn chỉ có thể thêm dây "dạng tự do".

MOSFET là cảm biến tĩnh, vì vậy hãy cẩn thận một chút, nhưng rất ít là quan trọng.

Bước 3: Thiết lập tệp với giá trị PWM

Thiết lập tệp với giá trị PWM
Thiết lập tệp với giá trị PWM

Một cách để điều khiển động cơ mà không cần phải viết BẤT KỲ phần mềm nào là chuẩn bị một số tệp chứa các byte thích hợp (có nhiều hơn hoặc ít hơn 0 bit) và chỉ cần SAO CHÉP chúng vào cổng COM nơi bạn đã kết nối động cơ. Tôi đã chuẩn bị một số tệp (sử dụng emacs, nhưng bất cứ thứ gì phù hợp với bạn đều tốt):

  • 0.pwm:: chứa 5000 ký tự NULL (không gian điều khiển trên hầu hết các bàn phím) [br] Điều này gần với "tốc độ tối đa" vì chúng ta sẽ có thể làm được với kỹ thuật này.
  • 1.pwm:: chứa 5000 ký tự control-A (ascii 01) (một bit "1" trên mỗi ký tự)
  • 3.pwm:: chứa 5000 ký tự control-C (ascii 03) (hai bit "1" trên mỗi ký tự)
  • 7.pwm:: chứa 5000 ký tự control-G (ascii 07) (ba bit "1" trên mỗi ký tự)
  • 15.pwm:: chứa 5000 ký tự control-O (ascii 15) (bốn bit "1" trên mỗi ký tự)
  • 31.pwm:: chứa 5000 ký tự control-_ (ascii 31) (năm bit "1" trên mỗi ký tự)
  • 63.pwm:: chứa 5000 "?" ký tự (ascii 63) (sáu bit "1" trên mỗi ký tự)
  • 127.pwm:: chứa 5000 ký tự DEL (ascii 127) (bảy bit "1" trên mỗi ký tự)

(Bây giờ tôi đã vẽ hình ảnh, bạn sẽ nhận thấy rằng các mẫu bit thực tế không lý tưởng. Vì rs232 nối tiếp truyền LSB trước, chúng tôi thực sự muốn chuyển thành số không thay vì số 0. Một bài tập cho học sinh!)

Bước 4: Chơi với DOS: Định cấu hình cổng COM của bạn và sao chép tệp

Chơi với DOS: Định cấu hình cổng COM của bạn và sao chép tệp
Chơi với DOS: Định cấu hình cổng COM của bạn và sao chép tệp

9600 bps là tốc độ bit phổ biến. Nó phù hợp tuyệt vời với "khoảng" một byte trên mili giây, vì vậy trong trường hợp này, nó đăng quang theo giây với tần số PWM là 1000Hz, điều mà tôi nghĩ là ổn đối với động cơ nhỏ. Bạn có thể thử nghiệm với các tốc độ bit khác nhau để xem mọi thứ hoạt động như thế nào, đây là một trong những ưu điểm của phương pháp này.: mode com1: 9600, n, 7, 1 "Điều đó cho biết cổng comm chạy ở tốc độ 9600bps và gửi 7 bit trong mỗi ký tự (để khớp với 7 độ dài bit khác nhau của chúng tôi.)" n "có nghĩa là KHÔNG chẵn lẻ, vì vậy đó sẽ là những bit dữ liệu duy nhất. "1" có nghĩa là sẽ có một bit "dừng", điều này sẽ ngăn chúng ta bật động cơ hoàn toàn (ồ.) Vì vậy, bây giờ bạn có thể bật động cơ bằng lệnh chẳng hạn như: copy 0.pwm com1: Vì chúng tôi đang gửi 5000 ký tự với tốc độ khoảng 1 mỗi mili giây, động cơ sẽ bật ở tốc độ gần với tốc độ tối đa trong khoảng 5 giây. Nếu bạn muốn ít hơn 5 giây, hãy tạo một tệp ngắn hơn. Tương tự, bạn có thể làm: copy 127.pwm com1: để chạy động cơ ở tốc độ thấp nhất có thể. Với thiết lập mà tôi đã có, động cơ sẽ không quay với bất cứ thứ gì "chậm hơn" 31.pwm, nhưng YMMV (Tôi mỏng k Tôi có một động cơ 12V chạy hết 5V của pin.) Lệnh COPY cho phép bạn xâu chuỗi các tệp lại với nhau, vì vậy nếu bạn muốn động cơ của mình tăng tốc và sau đó lại chậm lại, bạn có thể làm như sau: copy 31.pwm + 15. pwm + 7.pwm + 0.pwm + 7.pwm + 15.pwm + 31.pwm com1:

Bước 5: Điều khiển động cơ từ một chương trình

Điều khiển động cơ từ một chương trình
Điều khiển động cơ từ một chương trình

Nếu bạn đang viết một chương trình, bạn có thể mở COM1: dưới dạng một tệp và chỉ cần ghi vào nó như thể nó là bất kỳ tệp nào khác. Có thể định giờ khoảng thời gian mà động cơ đang bật bằng cách xuất ra một số ký tự cụ thể dường như rất hữu ích. Đừng quên rằng hệ thống rất có khả năng đệm các ký tự mà bạn gửi đến cổng nối tiếp, vì vậy chỉ vì một cuộc gọi WRITE trả về không có nghĩa là động cơ đã hoàn thành bất cứ điều gì bạn đã yêu cầu. Vì chúng tôi không làm bất cứ điều gì "lạ mắt" với các tín hiệu cổng com, bạn không cần phải điều tra các tùy chọn phức tạp mà nó có thể hỗ trợ. (mặc dù, nếu bạn có thể tìm ra cách gửi chuỗi BREAK tới cổng com, đó là trạng thái "0" liên tục và sẽ điều khiển động cơ TẤT CẢ; hơn là gửi ký tự 0 liên tục.)

Nếu ngôn ngữ lập trình của bạn không cho phép bạn xuất ra COM1:, bạn vẫn có thể điều khiển động cơ bằng cách "gọi" DOS để thực hiện các lệnh sao chép. (Được rồi. Tôi đã tải xuống Visual Basic Express 2005 của Microsoft (miễn phí) và cố gắng buộc một thanh cuộn ngang với tốc độ động cơ, được điều khiển thông qua cổng nối tiếp. Zip đính kèm. Nó có thể có nhiều hơn mức cần thiết để sao chép chương trình trên hệ thống của bạn, nhưng tôi không thể tìm ra chính xác bit nào cần thiết. Chương trình vừa được đơn giản hóa nhưng lại khó hiểu hơn (xin lỗi) do có nhiều luồng. Một luồng không làm gì khác ngoài việc xuất ra cổng nối tiếp và chuỗi chính đọc thanh cuộn và cập nhật thông tin được chuỗi nối tiếp sử dụng.)

Bước 6: Thử nghiệm

Thí nghiệm!
Thí nghiệm!

Nếu mọi thứ về cơ bản đang hoạt động, điều này cung cấp rất nhiều không gian để thử nghiệm.

  • Sửa lỗi các mẫu bit của tôi!
  • Tốc độ bit có quan trọng nhiều không?
  • Bạn có phải kiểm soát độ rộng của các xung "bật" và "tắt", hay chỉ đơn giản là kiểm soát tỷ lệ của chúng là đủ?
  • Nếu bạn chỉ phải kiểm soát tỷ lệ, bạn có thể xem xét các chuỗi nhiều ký tự ở tốc độ bit cao hơn để có được nhiều mức tốc độ hơn. Kết quả đi ra 0 theo sau là 127 sẽ có giá trị bằng một nửa.
  • Điều này cũng có tác dụng đối với việc làm mờ bóng đèn pin.

Đề xuất: