- Điều khiển theo biờn dạng (contour):
b. Lưu đồ thuật toỏn của vi xử lý.
Chương trỡnh điều khiển trờn vi xử lý cú nhiệm vụ nhận giỏ trị gúc quay , vật
tốc, chiều của cỏc động cơ bước truyền động mỏy CNC và Rụbụt cụng nghiệp, sau đú xuất tớn hiệu điều khiển tới mạch điều khiển động cơ bước sao cho nú quay đỳng vận tốc và vị trớ mong muốn. Do chương trỡnh điều khiển mỏy CNC và rụbụt cụng nghiệp là tương tự nhau. Sau đõy trỡnh bày sơ đồ thuật toỏn tớnh toỏn giỏ trị gúc quay và vận tốc cỏc động cơ bước điều khiển mỏy CNC.
Mỏy CNC cú ba chuyển động tạo hỡnh, cỏc chuyển động này được điều khiển bằng cỏc động cơ bước, vận tốc và giỏ trị gúc quay của cỏc động cơ bước này được chương trỡnh trờn mày vi tớnh truyền xuống. Vi xử lý sẽ phải nhận cỏc dữ liệu và xuất tớn hiệu điều khiển động cơ bước tương ứng một cỏch đồng thời. Để thực hiện được điều này trong đề tài sử dụng chức năng ngắt của bộ timer 0. Quỏ trỡnh này được diễn ra như lưu đồ thuật toỏn hỡnh 3.25.
Hỡnh 3.25. Lưu đồ thuật toỏn của chương trỡnh trờn vi xử lý mỏy CNC
Trong lưu đồ thuật toỏn trờn sử dụng cỏc biến toàn cục là số bước 1, số bước 2, số bước 3 là giỏ trị gúc quay của động cơ bước, chu kỳ cấp xung điện ỏp cho cỏc cuộn dõy của động cơ T1,T2,T3. Sau khi nhận dữ liệu từ cụ̉ng COM của mỏy tớnh, vi xử lý gỏn cỏc giỏ trị mới cho cỏc biến số bước 1, số bước 2, số bước 3, T1,T2,T3. Trong chương
Start Nhận dữ liệu cổng Com Chiều1 = chiêu1(j) Sốb ớc1 = TH1*256+TL1 T1=time1(j) Chiều2 = chiêu2(j) Số b ớc = TH2*256+TL2 T2=time2(j) Chiều3 = chiêu3(j) Sốb ớc3 = TH3*256+TL3 T3 = time3(j) INIT Sobuoc1=0 Sobuoc2=0 Dịch 1buoc theo chiều 1 Sobuoc1=Sobuoc1-1
Dịch 1buoc theo chiều 2 Sobuoc2 = Sobuoc2-1 TR1 = 0 TR2 = 0 (Sobuoc1=0)&(Sobuoc2=0) &(Sobuoc3=0) No No Yes Yes Yes Sobuoc3=0
Dịch 1buoc theo chiều 2 Sobuoc2 = Sobuoc2-1 TR3 = 0 Yes No No No
trỡnh ngắt của bộ timer 0, cứ sau mỗi lõ̀n chương trỡnh ngắt được gọi thời gian sẽ được tớnh và cộng dồn, cho đến khớ thời gian tụ̉ng bằng số chu kỳ của cỏc động cơ tương ứng, khi đú vi xử lý sẽ xuất tớn hiệu điều khiển động cơ. Khi xuất tớn hiệu điều khiển động cơ nào thỡ biến số bước của động cơ đú sẽ tự động giảm đi 1, chương trỡnh ngắt sẽ dừng lại khi cả ba biến số bước 1, số bước 2 và số bước 3 đồng thời bằng khụng.
3.4.2.2. Giới thiệu phần mềm CodeVisionAVR
CodeVisionAVR là phõ̀n mềm lập trỡnh tương đối phụ̉ biến cho cỏc loại vi điều khiển họ AVR. Phương phỏp lập trỡnh đơn giản nhờ cỏc lệnh lập trỡnh, giao diện lập trỡnh dạng text, cỏc chức năng hỗ trợ dễ khai thỏc, do đú người sử dụng cú thể lập trỡnh, mụ phỏng hoạt động một cỏch thuận tiện, nhất là đối với cỏc đối tượng mới bắt đõ̀u làm quen với kỹ thuật lập trỡnh vi điều khiển [13], [14].