Mục lục:
- Bước 1: Thư viện StepDriver
- Bước 2: Biến toàn cục
- Bước 3: Chức năng - Thiết lập các Ghim trình điều khiển
- Bước 4: Chức năng - Chức năng cơ bản của trình điều khiển
- Bước 5: Chức năng - Cài đặt bước động cơ
- Bước 6: Chức năng - Đặt chế độ bước động cơ
- Bước 7: Chức năng - Đặt công tắc giới hạn
- Bước 8: Chức năng - Đọc các công tắc giới hạn
- Bước 9: Chức năng - Thiết lập chuyển động
- Bước 10: Chức năng - Chức năng chuyển động
- Bước 11: Hàm - Hàm chuyển động - Biến
- Bước 12: Chức năng - Chức năng chuyển động - Gia tốc
- Bước 13: Chức năng - Chức năng chuyển động - Tốc độ liên tục
- Bước 14: Chức năng - Chức năng chuyển động - Giảm tốc
- Bước 15: Chức năng - Chức năng chuyển động - Tốc độ liên tục
- Bước 16: Chức năng - Chức năng di chuyển - Chuyển lượt
- Bước 17: Biểu đồ chuyển động - Vận tốc vị trí
- Bước 18: Biểu đồ chuyển động - Vị trí Vs. Chức vụ
- Bước 19: Biểu đồ chuyển động - Vận tốc Vs. Chốc lát
Video: Arduino: Lib chính xác cho động cơ bước: 19 bước
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:35
Hôm nay, tôi sẽ giới thiệu cho các bạn một thư viện dành cho trình điều khiển động cơ bước đầy đủ với các công tắc hành trình và chuyển động của động cơ với gia tốc và bước vi mô. Lib này, hoạt động trên cả Arduino Uno và Arduino Mega, cho phép bạn di chuyển động cơ không chỉ dựa trên số bước mà còn trên milimét. Và nó cũng khá chính xác.
Một tính năng quan trọng của thư viện này là nó cho phép bạn xây dựng máy CNC của riêng mình, không nhất thiết chỉ là X, Y mà còn là một bộ chuyển mạch, vì nó không phải là một GRBL sẵn sàng, mà là lập trình cho phép bạn tạo ra chiếc máy lý tưởng cho mình.
Tuy nhiên, tuyên bố sau đây là một chi tiết quan trọng! Video này chỉ dành cho những người đã quen với lập trình. Nếu bạn chưa quen với lập trình Arduino, trước tiên bạn nên xem các video giới thiệu khác trên kênh của tôi. Điều này là do tôi đang thảo luận về một chủ đề nâng cao trong video cụ thể này và giải thích chi tiết hơn về Lib được sử dụng trong video: Động cơ Bước với Tăng tốc và Kết thúc cú đánh.
Bước 1: Thư viện StepDriver
Thư viện này bao gồm ba loại trình điều khiển phổ biến nhất trên thị trường: A4988, DRV8825 và TB6600. Nó cấu hình các chân của trình điều khiển, cho phép chúng thực hiện thiết lập lại và đưa vào chế độ Ngủ, cũng như kích hoạt và hủy kích hoạt các đầu ra động cơ hoạt động trên chân Bật. Nó cũng đặt đầu vào của các chân vi bước của trình điều khiển, và giới hạn các công tắc và mức kích hoạt của chúng (cao hoặc thấp). Nó cũng có mã chuyển động của động cơ với gia tốc liên tục tính bằng mm / s², tốc độ tối đa tính bằng mm / s và tốc độ tối thiểu tính bằng mm / s.
Đối với những ai đã xem phần 1 và 2 của video Bước Động Cơ Với Tăng Tốc Và Kết Thúc Động Cơ, hãy tải xuống thư viện mới này có sẵn ngay hôm nay, vì tôi đã thực hiện một số thay đổi trong tệp đầu tiên đó để tạo điều kiện sử dụng.
Bước 2: Biến toàn cục
Tôi hiển thị chính xác từng biến toàn cục dùng để làm gì.
Bước 3: Chức năng - Thiết lập các Ghim trình điều khiển
Ở đây, tôi mô tả một số phương pháp.
Tôi đặt cài đặt Sơ đồ chân và các chân Arduino làm đầu ra.
Bước 4: Chức năng - Chức năng cơ bản của trình điều khiển
Trong phần này, chúng tôi làm việc với cấu hình của trình điều khiển và các chức năng cơ bản của nó.
Bước 5: Chức năng - Cài đặt bước động cơ
Trong bước này của mã, chúng tôi định cấu hình số bước trên mỗi milimét mà động cơ phải thực hiện.
Bước 6: Chức năng - Đặt chế độ bước động cơ
Bảng này hiển thị các cài đặt cho chế độ bước động cơ. Dưới đây là một số ví dụ.
Bước 7: Chức năng - Đặt công tắc giới hạn
Ở đây, tôi phải đọc toàn bộ và giá trị boolean. Cần thiết lập xem phím hoạt động là lên hay xuống, trong khi đặt đinh ghim giới hạn tối đa và tối thiểu.
Bước 8: Chức năng - Đọc các công tắc giới hạn
Phần này khác với phần trong Lib mà tôi đã cung cấp vào tuần trước. Tại sao tôi lại thay đổi nó? Tôi đã tạo eRead để thay thế một số ứng dụng khác. Tại đây, eRead sẽ đọc LVL, digitalRead (pin) và sẽ trả về TRUE. Tất cả điều này cần được thực hiện ở mức cao. Công việc sau với khóa hoạt động sẽ ở mức thấp. Tôi sẽ sử dụng nó ở đây để hiển thị cho bạn bảng "Sự thật".
Trong hình ảnh của mã, tôi đặt một sơ đồ sẽ giúp hiểu rằng, trong phần này của mã nguồn, tôi đang chuyển sang Tăng dần và vẫn chưa đạt đến khóa cuối khóa học.
Bây giờ, trong hình ảnh os mã bool DRV8825 này, tôi cho thấy động cơ vẫn đang chuyển động theo hướng phát triển. Tuy nhiên, công tắc giới hạn tối đa đã được kích hoạt. Cơ chế, sau đó, phải dừng chuyển động.
Cuối cùng, tôi cho thấy cùng một chuyển động, nhưng theo hướng ngược lại.
Tại đây, bạn đã kích hoạt công tắc cuối khóa học.
Bước 9: Chức năng - Thiết lập chuyển động
Tiện ích chính của phương pháp motionConfig là chuyển đổi milimét trên giây (một phép đo được sử dụng trong máy CNC) thành các bước, để đáp ứng bộ điều khiển của động cơ bước. Do đó, chính trong phần này, tôi khởi tạo các biến để hiểu các bước chứ không phải milimét.
Bước 10: Chức năng - Chức năng chuyển động
Trong bước này, chúng tôi xử lý lệnh di chuyển một bước theo hướng mong muốn trong một khoảng thời gian tính bằng micro giây. Chúng tôi cũng đặt chốt hướng của người lái xe, thời gian trễ và hướng của các công tắc giới hạn.
Bước 11: Hàm - Hàm chuyển động - Biến
Trong phần này, chúng tôi định cấu hình tất cả các biến liên quan đến các khoảng thời gian tốc độ tối đa và tối thiểu, khoảng cách của quỹ đạo và các bước cần thiết để ngắt quỹ đạo, trong số những biến khác.
Bước 12: Chức năng - Chức năng chuyển động - Gia tốc
Ở đây, tôi trình bày một số chi tiết về cách chúng tôi đến dữ liệu gia tốc, được tính toán thông qua phương trình Torricelli, vì điều này tính đến không gian để làm việc của gia tốc chứ không phải thời gian. Nhưng, điều quan trọng ở đây là phải hiểu rằng toàn bộ phương trình này chỉ là về một dòng mã.
Chúng tôi đã xác định được một hình thang trong hình ảnh trên, vì RPM ban đầu không tốt cho hầu hết các động cơ bước. Điều tương tự cũng xảy ra với sự giảm tốc. Do đó, chúng ta hình dung một hình thang trong khoảng thời gian giữa gia tốc và giảm tốc.
Bước 13: Chức năng - Chức năng chuyển động - Tốc độ liên tục
Ở đây chúng tôi giữ nguyên số bước được sử dụng khi tăng tốc, chúng tôi tiếp tục với tốc độ liên tục và giữ với tốc độ tối đa, có thể thấy trong hình dưới đây.
Bước 14: Chức năng - Chức năng chuyển động - Giảm tốc
Ở đây chúng ta có một phương trình khác, lần này với giá trị gia tốc âm. Nó cũng được hiển thị trong một dòng mã, trong hình dưới đây, đại diện cho hình chữ nhật có nhãn Giảm tốc.
Bước 15: Chức năng - Chức năng chuyển động - Tốc độ liên tục
Chúng tôi quay trở lại tốc độ liên tục để làm việc nửa sau của quỹ đạo, như được thấy bên dưới.
Bước 16: Chức năng - Chức năng di chuyển - Chuyển lượt
Trong phần này, chúng ta di chuyển động cơ theo một số vòng nhất định theo hướng mong muốn, quy đổi số vòng quay theo milimét. Cuối cùng, chúng tôi di chuyển động cơ theo hướng yêu cầu.
Bước 17: Biểu đồ chuyển động - Vận tốc vị trí
Trong biểu đồ này, tôi có dữ liệu được trích xuất từ phương trình mà chúng tôi đã sử dụng trong phần Tăng tốc. Tôi lấy các giá trị và chơi trên nối tiếp Arduino, và tôi chuyển từ này sang Excel, kết quả là bảng này. Bảng này hiển thị tiến trình của bước.
Bước 18: Biểu đồ chuyển động - Vị trí Vs. Chức vụ
Ở đây, chúng tôi lấy vị trí, theo số bước và vận tốc và chuyển nó thành chu kỳ, tính bằng micro giây. Chúng ta lưu ý trong bước này rằng chu kỳ tỷ lệ nghịch với vận tốc.
Bước 19: Biểu đồ chuyển động - Vận tốc Vs. Chốc lát
Cuối cùng, chúng ta có vận tốc là một hàm của thời gian, và do đó, chúng ta có một đường thẳng, vì nó là vận tốc là một hàm của thời gian.
Đề xuất:
Đồng hồ đo điện áp chính xác & chính xác Arduino (0-90V DC): 3 bước
Đồng hồ đo điện áp chính xác & chính xác Arduino (0-90V DC): Trong tài liệu hướng dẫn này, tôi đã chế tạo một vôn kế để đo điện áp cao DC (0-90v) với độ chính xác và độ chính xác tương đối bằng cách sử dụng Arduino Nano. Các phép đo thử nghiệm tôi đã thực hiện đủ chính xác, chủ yếu là trong khoảng 0,3v so với điện áp thực được đo bằng
Xúc xắc điện tử - Arduino Die / xúc xắc 1 đến 6 Xúc xắc + D4, D5, D8, D10, D12, D20, D24 và D30: 6 bước (có Hình ảnh)
Xúc xắc điện tử - Arduino Die / xúc xắc 1 đến 6 Xúc xắc + D4, D5, D8, D10, D12, D20, D24 và D30: Đây là một dự án arduino đơn giản để tạo ra một con xúc xắc điện tử. Có thể chọn cho 1 đến 6 viên xúc xắc hoặc 1 trong 8 viên xúc xắc đặc biệt. Lựa chọn được thực hiện đơn giản bằng cách xoay một bộ mã hóa quay. Đây là các tính năng: 1 xúc xắc: hiển thị các chấm lớn 2-6 xúc xắc: hiển thị các chấm
Động cơ bước Điều khiển động cơ bước Động cơ bước - Động cơ bước như một bộ mã hóa quay: 11 bước (có hình ảnh)
Động cơ bước Điều khiển động cơ bước Động cơ bước | Động cơ bước như một bộ mã hóa quay: Có một vài động cơ bước nằm xung quanh và muốn làm điều gì đó? Trong Có thể hướng dẫn này, hãy sử dụng động cơ bước làm bộ mã hóa quay để điều khiển vị trí của động cơ bước khác bằng vi điều khiển Arduino. Vì vậy, không cần phải quảng cáo thêm, chúng ta hãy
Đặt DS3231 RTC (Đồng hồ thời gian thực) chính xác, nhanh chóng và tự động bằng Java (+ -1s): 3 bước
Đặt DS3231 RTC (Đồng hồ thời gian thực) chính xác, nhanh chóng và tự động bằng Java (+ -1s): Có thể hướng dẫn này sẽ chỉ cho bạn cách đặt thời gian trên Đồng hồ thời gian thực DS3231 bằng Arduino và một ứng dụng Java nhỏ sử dụng kết nối nối tiếp của Arduino. Logic cơ bản của chương trình này: 1. Arduino gửi một yêu cầu nối tiếp
Một thí nghiệm chỉnh lưu chính xác: 11 bước
Thử nghiệm chỉnh lưu chính xác: Gần đây tôi đã thực hiện một thử nghiệm về mạch chỉnh lưu chính xác và nhận được một số kết luận sơ bộ. Xét rằng mạch chỉnh lưu chính xác là mạch thông dụng, kết quả của thí nghiệm này có thể cung cấp một số thông tin tham khảo