Mündəricat:

EAL - SmartStorage: 3 addım
EAL - SmartStorage: 3 addım

Video: EAL - SmartStorage: 3 addım

Video: EAL - SmartStorage: 3 addım
Video: Google Engineer Salary Levels #shorts 2024, Noyabr
Anonim
EAL - SmartStorage
EAL - SmartStorage
EAL - SmartStorage
EAL - SmartStorage

Bu Kasper Borger Tulinius tərəfindən SmartStorage üçün bir layihədir

Addım 1: Metodlar

Metodlar
Metodlar

Bu layihə üçün bir neçə fərqli proqramdan istifadə etdim.

Maşın özü 123D Dizaynında yaradılıb və DaVinci jr -də çap olunur. Printer

Ən yaxşı deyil, amma çox sadə və istifadəçi dostu.

C proqramlaşdırılmış bir Arduino tərəfindən idarə olunur.

WindowsFormApp (C#) etmək üçün Visual Studio 2017 -dən istifadə etdim.

Addım 2: Arduino üçün kod

Arduino kodu
Arduino kodu
Arduino kodu
Arduino kodu

Maşının özü üçün bir Arduino Mega istifadə etdim. C proqramlaşdırılmışdır. Maşın çox sadədir. Rəf almaq və operatora təqdim etmək üçün sadə bir ardıcıllıqla işləyir.

İstifadə etdiyim mühərriklər 2 SBT0811 ilə idarə olunan 2 kiçik pilləli mühərriklərdir.

Maşını idarə etmək üçün com portu ilə əlaqə quran bir tətbiq etdim.

#"Stepper.h" daxil edin

#DEFINE ADIMLARI 32 // Daxili şaftın fırlanması üçün addımların sayı // xarici mili int cmd -də 2048 addım; // Pulsuz WinApp int posZero = 0; int posOne = 1000; int posTwo = 1500; int posThree = 2000; int grab = 100; int çatdırılması = -100; int steps_extractor_out = 512; int steps_extractor_back = -512; Step qaldırıcı (STEPS, 8, 10, 9, 11); Addım çıxarıcı (STEPS, 2, 3, 4, 5); void setup () {} void loop () {Serial.begin (9600); cmd = Serial.read (); əgər (cmd == 1) {Serial.end (); gecikmə (1000); } başqa əgər (cmd == 0) {hoist.setSpeed (600); qaldırıcı addım (posOne); gecikmə (200); extractor.setSpeed (300); extractor.step (steps_extractor_out); gecikmə (200); qaldırıcı.setSpeed (100); qaldırıcı. addım (tutmaq); gecikmə (200); extractor.step (steps_extractor_back); gecikmə (200); qaldırıcı.setSpeed (600); qaldırıcı. addım (-posOne-grab); gecikmə (200); extractor.step (steps_extractor_out); gecikmə (5000); // EVT CMD FRA WINaPP extractor.step (steps_extractor_back); gecikmə (200); qaldırıcı. addım (posOne+tutmaq); gecikmə (200); extractor.step (steps_extractor_out); gecikmə (200); qaldırıcı.setSpeed (100); qaldırıcı. addım (-qapı); gecikmə (200); extractor.step (steps_extractor_back); gecikmə (200); qaldırıcı.setSpeed (600); qaldırıcı. addım (-posOne); Serial.begin (9600); Serial.println (0); Serial.end (); } başqa əgər (cmd == 2) {hoist.setSpeed (600); qaldırıcı addım (posTwo); gecikmə (200); extractor.setSpeed (300); extractor.step (steps_extractor_out); gecikmə (200); qaldırıcı.setSpeed (100); qaldırıcı. addım (tutmaq); gecikmə (200); extractor.step (steps_extractor_back); gecikmə (200); qaldırıcı.setSpeed (600); qaldırıcı. addım (-posTwo-grab); gecikmə (200); extractor.step (steps_extractor_out); gecikmə (5000); // EVT CMD FRA WINaPP extractor.step (steps_extractor_back); gecikmə (200); qaldırıcı addım (posTwo+tutmaq); gecikmə (200); extractor.step (steps_extractor_out); gecikmə (200); qaldırıcı.setSpeed (100); qaldırıcı. addım (-qapı); gecikmə (200); extractor.step (steps_extractor_back); gecikmə (200); qaldırıcı.setSpeed (600); qaldırıcı addım (-posTwo); Serial.begin (9600); Serial.println (0); Serial.end (); } başqa əgər (cmd == 3) {hoist.setSpeed (600); qaldırıcı addım (posThree); gecikmə (200); extractor.setSpeed (300); extractor.step (steps_extractor_out); gecikmə (200); qaldırıcı.setSpeed (100); qaldırıcı. addım (tutmaq); gecikmə (200); extractor.step (steps_extractor_back); gecikmə (200); qaldırıcı.setSpeed (600); qaldırıcı. addım (-posThree-grab); gecikmə (200); extractor.step (steps_extractor_out); gecikmə (5000); // EVT CMD FRA WINaPP extractor.step (steps_extractor_back); gecikmə (200); qaldırıcı addım (posThree+grab); gecikmə (200); extractor.step (steps_extractor_out); gecikmə (200); qaldırıcı.setSpeed (100); qaldırıcı. addım (-qapı); gecikmə (200); extractor.step (steps_extractor_back); gecikmə (200); qaldırıcı.setSpeed (600); qaldırıcı. addım (-posThree); Serial.begin (9600); Serial.println (0); Serial.end (); }}

Addım 3: Tətbiq

Tətbiq
Tətbiq

Yaratdığım tətbiq VisualStudio 2017 -də hazırlanmışdır.

Bu vəziyyətdə bir SQL verilənlər bazası olan bir Windows formaları tətbiqidir.

Verilənlər bazasında istifadəçi, hər bir maşının yeri və hər bir maşının məzmunu haqqında məlumatlar olan 3 cədvəl var.

Tətbiqi işə salanda adınız və pw ilə daxil olursunuz.

Sonra hansı maşının işlədiləcəyini seçəcəksiniz və hər bir çekmecenin məzmunu sizin üçün təqdim olunacaq.

Sonra "çekmece al" düyməsini basa bilərsiniz və maşın çekmece alacaq və götürdüyünüz və ya təqdim etdiyiniz əşyanın miqdarını yeniləyə bilərsiniz.

Tövsiyə: