Orodha ya maudhui:

Mashine ya Kuokota ya CNC: Hatua 9 (na Picha)
Mashine ya Kuokota ya CNC: Hatua 9 (na Picha)

Video: Mashine ya Kuokota ya CNC: Hatua 9 (na Picha)

Video: Mashine ya Kuokota ya CNC: Hatua 9 (na Picha)
Video: Какая версия винды тебе нравится больше всех? 😅🤟 #windows #microsoft #винда #виндовс11 #виндовс 2024, Julai
Anonim
Mashine ya Kuokota ya CNC
Mashine ya Kuokota ya CNC

Ikiwa wewe ni mtengenezaji mzuri kama mimi, basi uwezekano mkubwa kuwa na vipikisho vingi, vitendaji, na vifaa vingine vya elektroniki vimelala. Lakini kuna shida kubwa: Je! Mtu anafuatiliaje nini au ngapi za kitu anacho? Kwa suala hili niliunda mashine ya CNC ambayo hupata habari kutoka kwa hifadhidata ya MySQL ambayo huenda na kupata kitu kilichoombwa. Mbali na mwisho wa hifadhidata, nilitengeneza ukurasa wa wavuti wa mbele ambao unaruhusu watumiaji kuingia na kisha kuunda vikundi vya sehemu, kuongeza sehemu mpya, na kubadilisha idadi ya sehemu. Kwa njia hii kila kitu kimoja kinaweza kuhesabiwa, kama mfumo wa usimamizi wa hisa.

Vipengele:

  • Arduino UNO & Genuino UNO
  • Screws za Mashine: 8mm, 3mm, 4mm
  • MOSFET N-kituo
  • Marekebisho Diode 1N4001
  • Pikipiki ya Stepper NEMA 17 x2
  • Dereva DRV8825 kwa Stepper Motors x2
  • Msimamizi 100 µF x2
  • DFRobot Servo Gripper
  • Ukanda wa Majira ya DFRobot x2
  • DFRobot 5MM Majira ya Pulley x2
  • DFRobot Linear Kuzaa 6mmx12mm x2
  • Mpira wa DFRobot Uzaa 8mmx12mm

Hatua ya 1: Nadharia

Image
Image

Msingi wa mfumo huu ni kuweka hesabu ya hesabu. Kwa mfano, ikiwa mtu ananunua bodi 20 za Arduino Uno angeweza kuongeza kiasi hicho kwenye jedwali la hifadhidata. Jamii hiyo itakuwa "Arduino", jina la "Uno", na idadi ya watu 20. Kwa watu wengi, mmiliki wa sehemu hiyo atakuwa jina la mtumiaji la mtu aliyeiongeza. Sehemu hiyo pia itajumuisha data kuhusu eneo lilipo kwenye gridi ya taifa. Wakati wowote kiasi cha sehemu kinabadilika mashine ya CNC ingechagua sehemu hiyo na kumpa mtumiaji.

Hatua ya 2: Hifadhidata

Hifadhidata
Hifadhidata
Hifadhidata
Hifadhidata

Nilihitaji hifadhidata inayopatikana kila mahali inayoweza kupatikana na Python na PHP. Ilibidi pia iwe rahisi kutumia na msaada mwingi, na kuifanya MySQL kuwa seva kamili ya hifadhidata. Nilianza kwa kupakua kisakinishi cha mysql kutoka https://dev.mysql.com/downloads/windows/installer/ kisha nikakimbia. Nilichagua kufunga seva (kwa kweli), na pia benchi la kazi, ganda, na huduma. Unapochagua jina la mtumiaji na nywila hakikisha umelikumbuka, kwani sifa hizo hizo zinahitajika katika faili zote za PHP na hati ya Python. Baada ya kuanzisha seva iwezeshe kuendeshwa kama mchakato wa nyuma kwa hivyo itafanya kazi kila wakati. Kuanzia hapa na kuendelea katika kila kitu lazima kiandikwe na kwa mpangilio sawa sawa na mimi. Ifuatayo, tengeneza hifadhidata mpya (schema) inayoitwa "vifaa". Kisha ongeza meza zifuatazo: "kategoria", "sehemu", na "watumiaji". Katika jedwali la vikundi ongeza safu wima zifuatazo kwa mpangilio halisi: "id" -int (11), PK, AI; "jina" -varchar (45); "mmiliki" - varchar (45).

Katika jedwali la sehemu ongeza nguzo zifuatazo kwa mpangilio halisi: "id" -int (11), AI, PK; "jamii" -varchar (45); "jina" -varchar (45); "wingi" -int (11); "mmiliki" -varchar (45); "eneoX" -int (11); "eneoY" -int (11);

Katika jedwali la watumiaji ongeza nguzo zifuatazo kwa mpangilio halisi: "id" -int (11), AI, PK; "jina la mtumiaji" -varchar (45); "nywila" -varchar (128);

Hatua ya 3: Kuweka Apache

Kuanzisha Apache
Kuanzisha Apache
Kuanzisha Apache
Kuanzisha Apache
Kuanzisha Apache
Kuanzisha Apache

Kurasa za wavuti ambazo nimeunda zinatumia HTML, CSS, Javascript, na PHP. Anza kwa kupakua toleo la hivi karibuni la apache kutoka https://www.apachelounge.com/download/ na uifungue, na kuhamisha folda kwenye saraka ya C: \. Ifuatayo, pakua PHP kutoka kwa https://windows.php.net/download#php-7.2 na uhakikishe kuwa ni toleo salama la Thread. Ondoa zipu, ibadilishe jina iwe "PHP", na uhamishe kwa saraka ya C: \. Kisha nenda kwenye C: / Apache24 / conf / httpd.conf na uihariri. Ongeza mistari ifuatayo chini ya sehemu:

LoadModule php7_module C: /PHP/php7apache2_4.dll

Saraka ya Index Index.html index.php

Matumizi ya AddHandler / x-httpd-php.php

PHPIniDir "C: / PHP"

Kisha jaribu seva yako kwa kutumia httpd.exe iliyoko kwenye folda ya bin. Kichwa kwa "localhost /" katika kivinjari chako na uone ikiwa ukurasa wa ulimwengu wa hello unakuja. Ikiwa inafanya hivyo, hurray, sasa unayo seva ya wavuti ya karibu.

Hatua ya 4: Kuweka Up PHP

Kuanzisha PHP
Kuanzisha PHP
Kuanzisha PHP
Kuanzisha PHP

Ili kuanzisha MySQL kwa PHP lazima mambo kadhaa yafanyike. Kwanza, badilisha jina "php.ini-ilipendekeza" kwa "php.ini" na kisha uifungue kwenye notepad. Elekea sehemu ya viendelezi na ongeza au uncomment "extension = php_mysqli.dll" ambayo itaruhusu PHP kuwasiliana na seva ya MySQL. Sasa fungua tena httpd.exe na uunda faili mpya inayoitwa "phptest.php" na uweke kwenye faili. Sasa nenda kwa localhost / phptest.php na uone ikiwa habari ya kivinjari chako inakuja.

Hatua ya 5: Kubuni Mashine

Kubuni Mashine
Kubuni Mashine
Kubuni Mashine
Kubuni Mashine
Kubuni Mashine
Kubuni Mashine

Nilianza kwa kuunda sehemu kadhaa za msingi katika Fusion 360: fimbo ya 6mm, kuzaa laini, na motor ya kukanyaga. Kisha nikapanua viboko viwili kuunda mhimili y, na pia kuweka ukanda wa muda kuzunguka motor ya stepper na kuzaa. Niliongeza pia mhimili wa x, vile vile. Kisha nikaanza kuchapisha 3D sehemu anuwai na pia CNC ilipeleka paneli mbili za upande.

Hatua ya 6: Kutengeneza Mashine

Kutengeneza Mashine
Kutengeneza Mashine
Kutengeneza Mashine
Kutengeneza Mashine
Kutengeneza Mashine
Kutengeneza Mashine

Niliishia kupita mara kadhaa ya kila sehemu, kwa hivyo ikiwa kuna tofauti ni kwa sababu hiyo. Nilianza kwa kupiga mchanga kila sehemu na kisha kuchimba kila shimo kwenye sehemu zilizochapishwa za 3D. Kisha nikaweka fani zenye mstari ndani ya mashimo na kukimbia fimbo 6mm kupitia hizo. Nilipandisha pia gari za stepper katika maeneo yao baada ya kushikamana na pulleys kwenye shafts zao. Ukanda wa muda ulifungwa kila pande mbili kwa shoka zote mbili. Mwishowe niligundua kuwa mshikaji atakuwa mzito sana, kwa hivyo nikachagua sumaku ya umeme badala yake. Pia nilikuwa na usaidizi wakati wa kuijenga, kwa namna ya paka.

Hatua ya 7: Msimbo wa Arduino

Msimbo wa Arduino
Msimbo wa Arduino

Msingi wangu wa mashine hii ilikuwa GRBL. Mwanzo wa nambari huorodhesha vigezo anuwai, kama vile umbali kwa kuzunguka, njia zingine, na viongezeo. Nilitumia maktaba ya BasicStepperDriver kudhibiti madereva ya mwendo wa kasi ya DRV8825. Madereva ya stepper wamewekwa kutumia 1/32 kukanyaga, na kuongeza azimio. Wakati wowote mashine "inapoinuka" hupitia mlolongo wa homing ambapo kila mhimili hupiga hatua hadi inapogonga swichi ya kikomo. Halafu inahamia kulingana na offset kwa eneo lililowekwa na huweka eneo kuwa 0, 0. Sasa wakati wowote inapokea amri ya kusonga kupitia serial inasonga kwenye eneo hilo la gridi.

Hatua ya 8: Programu ya Python

Nilichagua kutumia Flask kama seva ya wavuti ambayo itapokea maombi ya GET kutoka kwa wavuti kuu. Maombi yanajumuisha jina na kitengo cha sehemu hiyo. Baada ya Flask kuishughulikia data inachanganuliwa, basi seva ya MySQL inaulizwa ili kujua eneo la sehemu hiyo. Kisha hati ya chatu hutuma amri kwa Arduino, ikitaja sehemu iko.

Hatua ya 9: Kutumia Kiteua Sehemu

Kutumia Kiteua Sehemu
Kutumia Kiteua Sehemu
Kutumia Kiteua Sehemu
Kutumia Kiteua Sehemu
Kutumia Kiteua Sehemu
Kutumia Kiteua Sehemu
Kutumia Kiteua Sehemu
Kutumia Kiteua Sehemu

Nimetoa faili za wavuti kwenye hazina yangu ya github: Weka faili kwenye folda ya htdocs kwenye folda ya Apache. Endesha tu hati ya chatu na kisha wakati wowote kiasi cha sehemu kitakapobadilishwa mashine itaenda kwenye eneo hilo na kuipata. Pata faili za uchapishaji za 3D hapa na faili za kurasa za wavuti hapa.

Ilipendekeza: