Đếm xung đo tốc độ động cơ DC dùng Psoc

Đếm xung đo tốc độ động cơ DC dùng Psoc


Phương pháp đo tốc độ động cơ thông dụng nhất hiện nay dùng cảm biến quang hay còn gọi là encoder. Tín hiệu từ encoder tạo ra các dạng xung vuông có tần số thay đổi phụ thuộc vào tốc độ động cơ. Do đó xung vuông này được đưa vào bộ vi xử lý để đếm số xung trong khoảng thời gian cho phép từ đó ta có thể tính được giá trị vận tốc của động cơ, từ đó để ổn định tốc độ động cơ hay điều khiển tốc độ nhanh chậm....
Yêu cầu :
+ Động cơ DC 12V có bộ Encoder (Mua thì khoảng 140k có luôn encoder)
+ LCD để hiện thị giá trị mà đo được (65K)
+ 1 Chíp Psoc Cy8C29466
1 ) Tìm hiểu về cấu tạo của Encoder:
* Cấu tạo của encoder


Nhìn trên hình ta thấy encoder gồm : 1 tấm tròn có khắc lỗ, 1 Hệ thông LED phát và thu.
* Nguyên tắc hoạt động cơ bản:
Nguyên lý cơ bản của encoder, đó là một đĩa tròn xoay, quay quanh trục. Trên đĩa có các lỗ (rãnh). Người ta dùng một đèn led để chiếu lên mặt đĩa. Khi đĩa quay, chỗ không có lỗ (rãnh), đèn led không chiếu xuyên qua được, chỗ có lỗ (rãnh), đèn led sẽ chiếu xuyên qua. Khi đó, phía mặt bên kia của đĩa, người ta đặt một con mắt thu. Với các tín hiệu có, hoặc không có ánh sáng chiếu qua, người ta ghi nhận được đèn led có chiếu qua lỗ hay không.Số xung đếm được và tăng lên nó tính bằng số lần ánh sáng bị cắt!
Như vậy là encoder sẽ tạo ra các tín hiệu xung vuông và các tín hiệu xung vuông này được cắt từ ánh sáng xuyên qua lỗ. Nên tần số của xung đầu ra sẽ phụ thuộc vào tốc độ quay của tấm tròn đó. Đối với encoder mình đang dùng thì nó có 2 tín hiệu ra lệch pha nhau 90. Hai tín hiệu này có thể xác định được chiều quay của động cơ.
Đây là sơ đồ cấu tạo cơ bản bên trong của nó để tạo được xung vuông!


2) Sơ đồ nguyên lý của mạch đo


Sơ đồ mạch nguyên lý đo tốc độ động cơ khá là đơn giản. Chỉ cần ta lấy tín hiệu từ encoder của động cơ vào là OK!
Nên nhớ trên mạch nguyên lý encoder được tích hợp sẵn và được gắn trực tiếp vào động cơ nên ta chỉ cần cấp điện vào cho bộ encoder và lấy 1 dấy tín hiệu ra khi động cơ quay là có xung ra tại chân của encoder và điện áp cấp cho encoder là 5V
+ Chú ý : encoder gắn trực tiếp trên động cơ gồm 4 dây (Không kể hai dây nguồn cho điện áp 12V vào động cơ quay). Trong đó dây đỏ là dây 5V, dây xanh là dây GND, Dây vàng và dây trắng là hai dây tín hiệu lệch pha nhau 90.
3 ) Thuật toán đo tốc độ động cơ.
DO Psoc có đủ các module : Timer 16, couter 8, LCD nên ta chỉ cần lấy các modul đó ra Sử dụng.
Thuật toán đơn giản mà được dùng rất phổ biến là ngắt thời gian để đếm xung từ encoder cụ thể như sau :
+ Tạo một module thời gian ở đây là timer 16 có thời gian là 0.01s, module Cou ter 8 đếm xung từ 0 đến 255 (Nó đếm lần lượt từ 0 đến 255 và đến 255 thì lại trở về chu kì mới)
+ Sử dụng ngắt timer 16. (Có nghĩa là cứ 0.01s là chương trình lại xẩy ra ngắt 1 lần). Trong hàm ngắt chúng ta xử lý số liệu mà số xung từ encoder được đưa về vi điều khiển. Vì Couter nó chỉ đếm được từ 0 đến 255 để bao gồm cả trường hợp trong 0.01s mà số xung nó lớn hơn 255 (Hay 0.01s nó được được trên 255 xung). Do đó chúng ta cần phải có 2 giá trị đếm của couter : Giá trị đếm mới (newcount), giá trị đếm cũ (oldcount).
* Giá trị đếm cũ = Giá trị đếm mới:
* Khởi tạo cho newcount = 255 - giá trị xung đếm
* Nếu mà giá trị oldcount > newcount thì giá trị xung cuối cùng là : count = 255 + newcount - oldcount.
* Nếu mà giá trị oldcount < newcount thì giá trị đếm cuối cùng là :count = newcount - oldcount
Từ giá trị đếm được số xung đó ta tính được vận tốc của động cơ. NHớ là encoder có 100xung/vòng.
4 ) Chương trình :
+ Môi trường lập trình : Psoc Designer
+ Viết cho vi xử lý : Psoc Cy8C29466

Bình Luận
Cùng danh mục: Điện tử ứng dụng

DIY - Mạch sạc acquy 12V tự ngắt đơn giản

18/08/2023 21:35:22 / Lượt xem: 774 / Người đăng: biendt

Bạn phải làm gì khi mà bộ sạc pin hiện tại không thể dừng lại quá trình sạc khi mà bình ắc qui đã đầy. Bình ắc qui bị nóng lên, bình bị phồng, có thể gây cháy nổ hoặc làm bình của bạn bị hỏng. Nếu như vậy, bạn cần một thiết bị/hay mạch sạc tự động có thể tự động ngắt khi bình đã sạc đủ điện. Vì vậy, bạn có thể lắp một mạch điện đơn giản, theo sơ đồ mạch dưới đây để quá trình sạc diễn ra tự động, bạn không còn bận tâm việc phải canh thời gian để ngắt nguồn sạc, và nỗi lo quên ngắt nguồn điện ngây hỏng bình ắc qui nữa.

Tổng quan về mạch Snubber - Phần I

09/04/2023 23:55:20 / Lượt xem: 1119 / Người đăng: Saonam Tronics

Tôi biết nhiều bạn học điện tử nhưng kiến thức về mạch snubber rất hạn chế, hiểu mơ hồ về nó. Đây là bài viết mở đầu cho tổng quan về mạch Snubber, hy vọng trang bị cho các bạn yêu thích bộ môn điện tử học kiến thức bổ ích về loại mạch rất phổ biến này. ác bạn kỹ thuật viên điện tử thường dùng oscillocope để đo "nhịp tim'' của mạch sw thỉnh thoảng hay gặp hình ảnh này ''điện áp thoáng đột biến và đổ chuông'', điều đó chứng tỏ rằng mạch điện đang gặp nhiều vấn đề nguy hại, nhiều, nhưng tôi tập trung 3 vấn đề chính sau

TTP224 - IC 4 nút cảm ứng điện dung

18/09/2022 16:00:00 / Lượt xem: 1135 / Người đăng: biendt

Ngày nay ở một số thiết bị gia dụng, thiết bị điện, điện tử sử dụng nút bấm nằm trên mặt phẳng cứng, ví dụ nút bấm trên một số loại bếp từ, nút bấm trong bảng công tắc điều khiển nhà thông minh, nút back của một số điện thoại…đó là các nút bấm điện dung. Đặc điểm của các loại nút này là chỉ cần chạm, không cần nhấn nút và ta cũng không thể nhấm “lõm” như những nút bấm cơ bình thường vì chúng được vẽ trên mặt nhựa hoặc mặt kính phẳng.

Hướng dẫn sử dụng module SIM800, SIM900 : Cơ bản chung và các tập lệnh cơ bản

31/05/2022 08:13:45 / Lượt xem: 3532 / Người đăng: biendt

SIM800 và SIM900 là hai module GSM giống nhau tính năng cơ bản : Băng tần (GSM850, EGSM900, DCS1800, PCS1900), Dữ liệu (SMS, GPRS, FM), giao tiếp với chíp điều khiển (Nối tiếp AT)...Nhưng với SIM800 cải tiến mới thì hỗ trợ thêm một số tính năng hỗ trợ Bluetooth và các lệnh AT cho FM/Bluetooth, cải thiện tín hiệu, giá thành rẻ. Những dự án xây dựng các hệ thống điều khiển từ xa, gửi nhận dữ liệu thu thập từ các cảm biến…

Mạch Dimmer điều khiển tải AC hoạt động như thế nào?

17/04/2022 16:18:16 / Lượt xem: 4420 / Người đăng: biendt

Dimmer là một bộ điều khiển công suất đơn giản, sử dụng Triac, có mạch nguyên lý rất đơn giản và chi phí rất thấp. Do vậy chúng rất phổ biến trong các thiết bị điện dân dụng và công nghiệp. Dimmer là điều khiển, thay đổi điện áp ra tải từ đó cường độ dòng điện (Công suất) cũng thay đổi theo. Do đó được ứng dụng điều khiển như điều chỉnh độ sáng của bóng đèn, lò sưởi, tốc độ vòng quay trong các thiết bị công suất....