Hiện tại mình đang nghiên cứu động cơ bước. Mình dùng Atmega16. Counter0 mình đọc tín hiệu Encoder, Time1 mình dùng để phát xxung, Timer2 mình dùng để định thời đọc số xung mà Counter0 đọc được. Sau khi mình tính toán được tôc độ của encoder thì mình sẽ đi điều khiển xung cho con động cơ bước, nhưng mừ mình lại muốn khống chế số xung phát ra để động cơ bước chạy được 1 quãng đường thì phải dừng lại. Mình đang bí chỗ này, ko biết có cách nào ko. Mong mọi người giúp đỡ
Thông báo
Collapse
No announcement yet.
khống chế số lượng xung điều khiển động cơ bước
Collapse
X
-
Mình ko biết có cách nào hay hơn ko, lúc trước cần khống chế số xung phát ra thì đơn giản nhất là chọn 1 port làm output bất kì rồi lập trình On /Off thông thường để tạo xung. Dùng timer thì chuyên nghiệp hơn và bắt nó dừng ngay đúng số xung mình cần thì dùng cái ngắt của chính timer đó để đếm xung luôn là OK.Làm sao mà bạn dám nói là không làm được khi bạn chưa từng thử một lần nào.
Ngay cả khi bạn đã làm 1 lần và thất bại bạn cũng không có quyền nói là không làm được vì bạn chưa làm lần thứ 2,3...
-
Nguyên văn bởi hoang_tuan Xem bài viếtHiện tại mình đang nghiên cứu động cơ bước. Mình dùng Atmega16. Counter0 mình đọc tín hiệu Encoder, Time1 mình dùng để phát xxung, Timer2 mình dùng để định thời đọc số xung mà Counter0 đọc được. Sau khi mình tính toán được tôc độ của encoder thì mình sẽ đi điều khiển xung cho con động cơ bước, nhưng mừ mình lại muốn khống chế số xung phát ra để động cơ bước chạy được 1 quãng đường thì phải dừng lại. Mình đang bí chỗ này, ko biết có cách nào ko. Mong mọi người giúp đỡ
Từ góc quay tương ứng với chu vi trục ( quả lô ) thì tính ra số bước cần là quá đơn giản . Ví dụ chu vi quả lô khi gắn với trục motor là 20cm, thì cứ mỗi xung nó đi được quãng đường 20 /200 = 0,1cm ............ muốn đi được quãng đường X thì nó cần Y xung ( toán của lớp 2-3 ).
--- Quả lô là kiểu tính trực tiếp, trong thực tế nếu là bánh răng, hộp số .v..v thì vẫn tính tỉ lệ hộp số, bước/ quãng đường theo cách tương tự .... mà chẳng cần encoder làm gì cho nó phí công dụng của motor bước.
Nếu cần thiết phải có encoder thì cũng đếm encoder rồi so sánh với số xung xem có bị thiếu/ thừa không ( thường bị thiếu ( do trượt lực nếu motor bước quá yếu ) thì ta cấp thêm xung )) ... trong thực tế nếu motor bước quá yếu thì người ta thay bằng cái to hơn, khỏe hơn chứ chẳng mấy thằng ... làm encoder như hệ SERVO. ( trừ những trường hợp quá đặc biệt ).Module RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com
Comment
-
bác queduong hiểu sai ý e rùi, không phải là e muốn tính toán 1 bước thì đi được bao nhiêu cái này chắc ai cũng tính đc mừ. Cái e hỏi là tính được ra số xung rùi vd là 500xung chẳng hạn thì làm cách nào dùng PWM của VDK mừ phát ra đúng số xung như vậy. Cái Encoder của e là đo vận tốc của 1 hệ truyền động khác, động cơ bước điều khiển 1 hệ truyền động khác. Bài toán là điều khiển cái hệ truyền động động cơ bước đó sao cho nó chuyển động tương đối so với hệ có gắn encoder kia ( có thể nhanh hay chậm hay bằng thì tùy theo người vận hành đặt giá trị tương đối)
- Cảm ơn bạn hoahauvn2 nhé . hum qua vừa lên diễn đàn hỏi x thì ngồi đọc code tự nhiên nhìn vào cái ngắt của nó mới chợt nghĩ tới, ngày trước ko quan tâm tới cái ngắt này lém vì nó gán mỗi giá trị đểm ban đầu, mừ mình đã gán nó bằng 1 biến và biến đó mình tính toán ở main rùi.
Comment
-
Nguyên văn bởi hoang_tuan Xem bài viếtbác queduong hiểu sai ý e rùi, không phải là e muốn tính toán 1 bước thì đi được bao nhiêu cái này chắc ai cũng tính đc mừ. Cái e hỏi là tính được ra số xung rùi vd là 500xung chẳng hạn thì làm cách nào dùng PWM của VDK mừ phát ra đúng số xung như vậy. Cái Encoder của e là đo vận tốc của 1 hệ truyền động khác, động cơ bước điều khiển 1 hệ truyền động khác. Bài toán là điều khiển cái hệ truyền động động cơ bước đó sao cho nó chuyển động tương đối so với hệ có gắn encoder kia ( có thể nhanh hay chậm hay bằng thì tùy theo người vận hành đặt giá trị tương đối)
- Cảm ơn bạn hoahauvn2 nhé . hum qua vừa lên diễn đàn hỏi x thì ngồi đọc code tự nhiên nhìn vào cái ngắt của nó mới chợt nghĩ tới, ngày trước ko quan tâm tới cái ngắt này lém vì nó gán mỗi giá trị đểm ban đầu, mừ mình đã gán nó bằng 1 biến và biến đó mình tính toán ở main rùi.
soxung = encoder_read();
// ==> phát lại số xung cho motor bước
for(i=0; i<soxung; i++)
{
PIN_out =1;
Delay_us(500);
PIN_out =0;
Delay_us(500);
}
Xong !Module RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com
Comment
-
chất lượng hơn dkhien có profile tăng tốc giảm tốc có thể tham khảo ở đây
http://www.atmel.com/images/doc8017.pdf
Generate stepper-motor speed profiles in real time | Embedded
Comment
-
Cái này có hai cách:
Cách 1: PWM có sinh ra ngắt tràn và ngắt so sánh, sử dụng 1 trong 2 ngắt ngắt trên, trong vector ngắt tăng couter, khi đủ thì disable pwm
Cách 2: nối chân output của PWM với 1 chân dùng ngắt cạnh lên (hoặc xuống), trong vector ngắt làm giống như trên
@xin thứ lỗi, lâu quá không chơi món này nên không nhớ rõ lắm, mà hình như nó dzậy đó
Comment
-
Nguyên văn bởi hoang_tuan Xem bài viếtDùng PWM hay hơn là viết lệnh như của bác Queduong ah.
Bị gà eng nhưng đọc qua tài liệu của bác nhatson thấy nó giống phần khai báo phát xung PTO của PLC
Thank u nhatson nhéModule RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com
Comment
-
pp linear cũng có khiếm khuyết cao cấp hơn thì bạn có thể nghiên cứu gia tốc kiểu s shape
tạo xung dkhien step em thấy hay đề cập 2 pán,
1. là step/time
2. là time/step
more
http://gamedev.stackexchange.com/que...able-time-step
hơi bị lạc đề so với yêu cầu chủ theard, dkhien bao nhiêu xung thì sau khi phát 1 xung ta trừ đi số xung phải phát thôi ah
b.rLast edited by nhatson.elec; 07-11-2014, 11:10.
Comment
Bài viết mới nhất
Collapse
-
bởi DiennuocAQCuối năm 2024, khi không khí Tết Nguyên Đán đang đến gần, nhu cầu sử dụng ánh sáng trong các gia đình tại quận Hà Đông càng trở nên quan trọng. Đèn điện không chỉ giúp chiếu sáng mà còn tạo không gian ấm cúng, thân thiện cho các bữa tiệc...
-
Channel: Chiếu sáng và thi công chiếu sáng
hôm nay, 22:37 -
-
Trả lời cho Cần mọi người giúp mạch tạo sóng siêu âm máy rửabởi bqviet
-
Channel: Điện tử công suất
hôm nay, 20:26 -
-
bởi Minhdai95Em chào mọi người, e đang sửa mạch tạo sóng siêu âm cho máy rửa mà chưa có tài liệu để tham khảo sửa, mọi người cho e xin tài liệu ạ...
-
Channel: Điện tử công suất
hôm nay, 11:37 -
-
bởi pia2k1Cùng câu hỏi và cần được giải đáp thêm ạ...
-
Channel: Hướng dẫn sử dụng diễn đàn
hôm nay, 11:28 -
-
Trả lời cho Công thức điện tửbởi mèomướpDạ thời thế giờ thay đổi theo hướng tích cực hơn rồi chú trung sĩ ạ. Kiến thức được chia sẻ ngày càng nhìu nên làm ăn gian dối ko còn dễ dàng như trước đâu ạ. Những thợ nhỏ rồi sẽ thành công nhân sản xuất đồ mới hết thay vì sửa chữa lặt vặt...
-
Channel: Tâm tình dân kỹ thuật
Hôm qua, 21:21 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi mèomướpDạ cùng chuẩn tín hiệu thì chắc chắn là nhận ạ. Vì bản chất oled hay lcd thì đều phải có mạch chuyển đổi trên thanh gỗ rồi chuyển sang những chip xử lý hàng nghìn chân gắn trên những tab mỏng dính rồi mới ra các điểm ảnh theo hàng...
-
Channel: Thiết bị điện tử cá nhân
Hôm qua, 20:31 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi yname11Ok , thanks bác đã chỉ...
-
Channel: Thiết bị điện tử cá nhân
Hôm qua, 15:06 -
-
bởi nguyendinhvanSau bao năm nghiên cứu cái dtvn. Tôi phát hiện công thức này. Các anh em xem đúng bao nhiêu phần trăm nhé !
Chập thì thay. Cháy thì tháo
Làm thì láo. Báo thì hay
May thì khoe. Rủi thì bỏ
Thành tích nhỏ. Báo thành to
Làm cho có. Báo chi li
Sai cả li. Báo...-
Channel: Tâm tình dân kỹ thuật
Hôm qua, 00:35 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi yname11có chắc ko b, màn lcd phải có cao áp mới sáng, màn led thì ko có, ko có cáp chuyển đổi thì lắp thế nào đc ??...
-
Channel: Thiết bị điện tử cá nhân
25-11-2024, 22:31 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi mèomướpDạ ý chú là màn oled ấy ạ. Cùng chuẩn lvds cùng độ phân giải thì cắm được ạ. Còn nó mà khác thì hơi khó vì oled các điểm ảnh nó tự phát sáng chứ ko dùng đèn nền như lcd. Cháu chỉ biết đến vậy thôi ạ. Chú muốn nghịch phải tự tìm hiểu kỹ trước khi mua thôi, khó mà ông thợ nào tư vấn vụ này...
-
Channel: Thiết bị điện tử cá nhân
25-11-2024, 22:14 -
Comment