这台机器被创建为主题建筑和CAD的学生项目,由五名学生的团队在斯科普里的机械工程学院。
这是一台分拣两种盘子的机器。其中一个盘子有洞,另一个没有。我们的任务是研制一种能自动把这些盘子分类的机器。我们提出了这个解决方案,它在其他25台机器中获得了第一名。
betway
这是自动分拣机的工作原理:
- 将板用手送入机器。
- 滚轮将板上逐个将板落在板盒中。
- 当板到达分拣机的底部时,它会触发微开关。
- 当开关打开时,LED就会打开。
- 如果板具有孔,则光电池将获得更多光,并且电动机将旋转到一侧。
- 如果板没有孔,则光电池将接收较少的光,并且电动机将旋转到另一侧。
电路原理图
机器使用PIC16F628A微控制器,并使用Mikroelektronika编程。
源代码
/********************************************************************************/ /* 机械电子设计团队* / / * Proekt阿宝Konstruiranje我CAD * / / *”Dizajn razvoj na 11月了,咱razdeluvanje na dva tipa plocki " */ /* */ /* */ /* */ /* Mikrokontroler: PIC16F628A * / / * Oscilator:Interen na 4兆赫 */ /* */ /* 2012年Dekemvri,斯科普里 */ /********************************************************************************/ 的(){RB2_bit = 1;//motorot pocnuva da se dvizi na levo delay_ms (500);// motorot se dvizi do krajna leva polozba delay_ms (500);delay_ms (500);delay_ms (500);PORTB = 0 x00;//koga ke stigne do krajnata leva polozba se gasi delay_ms (200);//vreme za kocenje na motorot RB3_bit = 1;//se aktivira relejot za promena na nasokata delay_ms (20); RB2_bit = 1; //motorot pocnuva da se dvizi desno delay_ms (500); //sredna pozicija na motorot delay_ms (500); delay_ms (500); delay_ms (500); PORTB = 0x00; //motorot se gasi koga ke dojde do sredina delay_ms (150); //vreme za kocenje na motorot } ////////////////////////////////////////////////////////////////////////////// void right () { RB3_bit = 1; //Se uklucuva relejot za promena na nasoka na motorot delay_ms (30); RB2_bit = 1; //motorot pocnuva da se dvizi desno delay_ms (500); delay_ms (500); delay_ms (500); delay_ms (500); //motorot se dvizi do krajna desna polozba PORTB = 0x00; //koga ke stigne do krajna desna polozba se gasi delay_ms (200); //vreme za kocenje na motorot RB2_bit = 1; //motorot pocnuva da se dvizi levo delay_ms (500); //sredna pozicija na motorot delay_ms (500); delay_ms (500); delay_ms (500); //sredna pozicija na motorot PORTB = 0x00; //motorot se gasi koga ke dojde do sredina delay_ms (150); //vreme za kocenje na motorot } ////////////////////////////////////////////////////////////////////////////// void main() { //pocetok na glavna programa TRISB = 0x00; //PORTB Izlezi TRISA = 0xff; //PORTA Vlezovi CMCON = 0x07; //gasenje na komparatori do { delay_ms (50); PORTB = 0x00; if (PORTA.b0==1) { //dali ima kocka? delay_ms (100); if (PORTA.b1==0) { //dali ima otvor? left (); } //ako ima otvor dvizi se levo else (right ()); }} //ako nema dvizi se desno while (1); }
这是缺少一个相机和opencv!干得好!这是一个典型的行业结构,只是大得多。
好的项目。很有帮助。
很高兴听到这个消息,谢谢!