CNDY ഷീൽഡ് GRBL CNC Arduino UNO ഉപയോക്തൃ ഗൈഡ്
V1.2
Arduino Uno-യിലെ GRBL പിൻഔട്ട്
അനലോഗ് 0 = അബോർട്ട് ബട്ടൺ*
അനലോഗ് 1 = ഫീഡ് ഹോൾഡ് ബട്ടൺ* (SAFETY_DOOR എന്നത് ഫീഡ് ഹോൾഡുമായി പങ്കിട്ടിരിക്കുന്നു. കോൺഫിഗറേഷൻ നിർവ്വചിച്ച് പ്രവർത്തനക്ഷമമാക്കിയിരിക്കുന്നു)
അനലോഗ് 2 = സൈക്കിൾ സ്റ്റാർട്ട് / റീസ്റ്റാർട്ട് ബട്ടൺ*
അനലോഗ് 3 = കൂളന്റ് ഔട്ട്പുട്ട് പ്രവർത്തനക്ഷമമാക്കുക
അനലോഗ് 4 = (ഓപ്ഷണൽ) മിസ്റ്റ് കൂളന്റ് ഔട്ട്പുട്ട് (അല്ലെങ്കിൽ ALARM_STATE ഡയഗ്നോസ്റ്റിക് ലൈറ്റ്**)
അനലോഗ് 5 = പ്രോബ് ഇൻപുട്ട്*
ഡിജിറ്റൽ 13 = സ്പിൻഡിൽ ദിശ
ഡിജിറ്റൽ 12 = പരിധി സ്വിച്ചുകൾ Z-ആക്സിസ്*
ഡിജിറ്റൽ 11 = സ്പിൻഡിൽ / ലേസർ PWM പ്രവർത്തനക്ഷമമാക്കുക
ഡിജിറ്റൽ 10 = പരിധി സ്വിച്ചുകൾ വൈ-ആക്സിസ്*
ഡിജിറ്റൽ 9 = പരിധി സ്വിച്ചുകൾ എക്സ്-ആക്സിസ്*
ഡിജിറ്റൽ 8 = സ്റ്റെപ്പർ മോട്ടോറുകൾ പ്രവർത്തനക്ഷമമാക്കുക / പ്രവർത്തനരഹിതമാക്കുക
ഡിജിറ്റൽ 7 = ദിശ Z-ആക്സിസ്
ഡിജിറ്റൽ 6 = ദിശ വൈ-ആക്സിസ്
ഡിജിറ്റൽ 5 = ദിശ എക്സ്-ആക്സിസ്
ഡിജിറ്റൽ 4 = സ്റ്റെപ്പ് പൾസ് Z-ആക്സിസ്
ഡിജിറ്റൽ 3 = സ്റ്റെപ്പ് പൾസ് Y-ആക്സിസ്
ഡിജിറ്റൽ 2 = സ്റ്റെപ്പ് പൾസ് എക്സ്-ആക്സിസ്
ഓപ്ഷണൽ ഡ്യുവൽ ആക്സിസ് ഫീച്ചർ
Uno അനലോഗ് പിൻ 3 = A-axis DUAL_DIRECTION (കൂളന്റ് പ്രവർത്തനക്ഷമമായ ഔട്ട്പുട്ട് ആയി ഉപയോഗിക്കുന്നു)
Uno അനലോഗ് പിൻ 4 = A-axis DUAL_STEP (ഓപ്ഷണൽ മിസ്റ്റ് കൂളന്റ് ഔട്ട്പുട്ടായി ഉപയോഗിക്കുന്നു)
Uno ഡിജിറ്റൽ 13 = കൂളന്റ് (സ്പിൻഡിൽ ദിശ മാറ്റിസ്ഥാപിക്കുന്നു.)
Arduino-യിൽ grbl ശേഖരം ഒരു ലൈബ്രറിയായി ഇൻസ്റ്റാൾ ചെയ്ത ശേഷം, config.h-ൽ ഇനിപ്പറയുന്ന വരികൾ അൺകമന്റ് ചെയ്യുക. file grbl ലൈബ്രറി ഫോൾഡറിൽ.
#എനേബിൾ_ഡ്യുവൽ_ആക്സിസ് നിർവചിക്കുക // ഡിഫോൾട്ട് പ്രവർത്തനരഹിതമാക്കി. പ്രവർത്തനക്ഷമമാക്കാൻ അഭിപ്രായമിടാതിരിക്കുക.
// മറ്റൊരു മോട്ടോർ മിറർ ചെയ്യാൻ ഒരു അക്ഷം തിരഞ്ഞെടുക്കുക. ഇപ്പോൾ X, Y അക്ഷങ്ങൾ മാത്രമേ പിന്തുണയ്ക്കൂ.
#DUAL_AXIS_SELECT Y_AXIS // നിർവചിക്കുക // ഒന്നുകിൽ X_AXIS അല്ലെങ്കിൽ Y_AXIS ആയിരിക്കണം
ശ്രദ്ധിക്കുക: ഡ്യുവൽ ആക്സിസ് പരിധി ഇവരുമായി പങ്കിട്ടിരിക്കുന്നു (Z-Axis) ഡിഫോൾട്ടായി പിൻ പരിധി.
ഡ്യുവൽ ആക്സിസ് ഫീച്ചറിന് പ്രവർത്തിക്കാൻ ഒരു സ്വതന്ത്ര സ്റ്റെപ്പ് പൾസ് പിൻ ആവശ്യമാണ്. സ്വതന്ത്ര ദിശ പിൻ തികച്ചും ആവശ്യമില്ല എന്നാൽ ഒരു Grbl $$ ക്രമീകരണം ഉപയോഗിച്ച് എളുപ്പത്തിൽ ദിശ മാറ്റാൻ സഹായിക്കുന്നു. ഈ പിന്നുകൾ സ്പിൻഡിൽ ദിശയും ഓപ്ഷണൽ കൂളന്റ് മിസ്റ്റ് പിന്നുകളും മാറ്റിസ്ഥാപിക്കുന്നു.
ഈ ഓപ്ഷണൽ ഡ്യുവൽ ആക്സിസ് ഫീച്ചർ പ്രാഥമികമായി ഹോമിംഗ് സൈക്കിളിന് ഒരു ഡ്യുവൽ-മോട്ടോർ ഗാൻട്രിയുടെ രണ്ട് വശങ്ങൾ സ്വതന്ത്രമായി കണ്ടെത്താനുള്ളതാണ്, അതായത് സെൽഫ് സ്ക്വയറിംഗ്. ഇതിന് ക്ലോൺ ചെയ്ത മോട്ടോറിന് അധിക പരിധി സ്വിച്ച് ആവശ്യമാണ്. സെൽഫ് സ്ക്വയറിലേക്ക്, ഗാൻട്രി ചതുരമാകുമ്പോൾ ട്രിഗർ ചെയ്യുന്നതിന് ക്ലോൺ ചെയ്ത അക്ഷത്തിലെ രണ്ട് ലിമിറ്റ് സ്വിച്ചുകളും ഫിസിക്കൽ പൊസിഷൻ ആയിരിക്കണം. $1=255 ക്രമീകരണം ഉപയോഗിച്ച് ഗാൻട്രി സമചതുരമായി നിലകൊള്ളുന്നത് ഉറപ്പാക്കാൻ മോട്ടോറുകൾ എപ്പോഴും പ്രവർത്തനക്ഷമമാക്കി നിലനിർത്താൻ വളരെ ശുപാർശ ചെയ്യുന്നു.
Arduino Uno-യിലെ Grbl-ന്, ലഭ്യമായ പിന്നുകളുടെ അഭാവം മൂലം ക്ലോൺ ചെയ്ത ആക്സിസ് ലിമിറ്റ് സ്വിച്ച് z- ആക്സിസ് ലിമിറ്റ് പിൻ ഉപയോഗിച്ച് പങ്കിടുകയും വയർ ചെയ്യുകയും വേണം. ഹോമിംഗ് സൈക്കിൾ ഇതിനകം ഡിഫോൾട്ട് കോൺഫിഗറായ വ്യത്യസ്ത സൈക്കിളുകളിൽ z-ആക്സിസും ക്ലോൺ ചെയ്ത അക്ഷവും ഹോം ചെയ്യണം.
മറ്റൊരു ജോഡി സ്റ്റെപ്പ്, ഡയറക്ഷൻ പിന്നുകളിലേക്ക് ഒരു ആക്സിസ് സ്റ്റെപ്പ് ഔട്ട്പുട്ട് ക്ലോൺ ചെയ്തുകൊണ്ടാണ് ഡ്യുവൽ ആക്സിസ് ഫീച്ചർ പ്രവർത്തിക്കുന്നത്. ക്ലോൺ ചെയ്ത മോട്ടോറിന്റെ സ്റ്റെപ്പ് പൾസും ദിശയും പ്രധാന അച്ചുതണ്ട് മോട്ടോറിൽ നിന്ന് സ്വതന്ത്രമായി സജ്ജമാക്കാൻ കഴിയും. എന്നിരുന്നാലും വിലയേറിയ ഫ്ലാഷും മെമ്മറിയും സംരക്ഷിക്കുന്നതിന്, ഈ ഡ്യുവൽ ആക്സിസ് ഫീച്ചർ പാരന്റ് മോട്ടോറിന്റെ അതേ ക്രമീകരണങ്ങൾ (പടി/എംഎം, പരമാവധി വേഗത, ആക്സിലറേഷൻ) പങ്കിടണം. ഇത് ഒരു സ്വതന്ത്ര നാലാമത്തെ അക്ഷത്തിന് ഒരു സവിശേഷതയല്ല. ഒരു മോട്ടോർ ക്ലോൺ മാത്രം.
മുന്നറിയിപ്പ്: നിങ്ങളുടെ ഡ്യുവൽ ആക്സിസ് മോട്ടോറുകളുടെ ദിശകൾ പരിശോധിക്കുന്നത് ഉറപ്പാക്കുക! നിങ്ങളുടെ ആദ്യത്തെ ഹോമിംഗ് സൈക്കിൾ അല്ലെങ്കിൽ ഏതെങ്കിലും നീണ്ട ചലനം പ്രവർത്തിപ്പിക്കുന്നതിന് മുമ്പ് അവ ഒരേ ദിശയിലേക്ക് നീങ്ങാൻ സജ്ജീകരിച്ചിരിക്കണം! എതിർ ദിശകളിലേക്ക് നീങ്ങുന്ന മോട്ടോറുകൾ നിങ്ങളുടെ മെഷീന് ഗുരുതരമായ കേടുപാടുകൾ വരുത്തും! നിങ്ങളുടെ സ്വന്തം ഉത്തരവാദിത്തത്തിൽ ഈ ഡ്യുവൽ ആക്സിസ് ഫീച്ചർ ഉപയോഗിക്കുക.
ശ്രദ്ധിക്കുക: ഈ ഫീച്ചറിന് ഏകദേശം 400 ബൈറ്റുകൾ ഫ്ലാഷ് ആവശ്യമാണ്. ചില കോൺഫിഗറേഷനുകൾ ഒരു Arduino 328p/Uno-യിൽ ഫിറ്റ് ചെയ്യാൻ ഫ്ലാഷ് തീർന്നേക്കാം. X, Y അക്ഷങ്ങൾ മാത്രമേ പിന്തുണയ്ക്കൂ. വേരിയബിൾ സ്പിൻഡിൽ/ലേസർ മോഡ് പിന്തുണയ്ക്കുന്നു, എന്നാൽ ഒരു കോൺഫിഗറേഷൻ ഓപ്ഷന് മാത്രം. കോർ XY, സ്പിൻഡിൽ ദിശ പിൻ, M7 മിസ്റ്റ് കൂളന്റ് എന്നിവ പ്രവർത്തനരഹിതമാണ്/പിന്തുണയ്ക്കുന്നില്ല.
സ്വിച്ച് പരാജയമോ ശബ്ദമോ കാരണം ഹോമിംഗ് സൈക്കിളിനെ ഡ്യുവൽ ആക്സിസ് റാക്ക് ചെയ്യുന്നതിൽ നിന്ന് തടയാൻ, ഒരു പരിധി മറ്റൊന്നിന് മുമ്പ് ട്രിഗർ ചെയ്യുമ്പോൾ, രണ്ടാമത്തെ മോട്ടോറിന്റെ ലിമിറ്റ് സ്വിച്ച് ചുവടെ നിർവചിച്ചിരിക്കുന്ന മൂന്ന് ദൂര പാരാമീറ്ററുകൾക്കുള്ളിൽ ട്രിഗർ ചെയ്യുന്നില്ലെങ്കിൽ ഹോമിംഗ് സൈക്കിൾ സ്വയമേവ ഇല്ലാതാകും. അച്ചുതണ്ടിന്റെ നീളം ശതമാനം സ്വയമേവ ഒരു പരാജയ ദൂരത്തെ ഒരു ശതമാനമായി കണക്കാക്കുംtagമറ്റ് നോൺ-ഡ്യുവൽ അക്ഷത്തിന്റെ പരമാവധി യാത്രയുടെ e, അതായത് ഡ്യുവൽ ആക്സിസ് തിരഞ്ഞെടുത്തത് X_AXIS 5.0% ആണെങ്കിൽ, പരാജയ ദൂരം y-ആക്സിസ് പരമാവധി യാത്രയുടെ 5.0% ആയി കണക്കാക്കും. പരാജയ ദൂരം മാക്സും മിനിറ്റും സാധുവായ പരാജയ ദൂരം എത്ര ദൂരമോ കുറവോ ആണ് എന്നതിന്റെ പരിധിയാണ്.
#നിർവ്വചിക്കുക DUAL_AXIS_HOMING_FAIL_AXIS_LENGTH_PERCENT 5.0 // ഫ്ലോട്ട് (ശതമാനം)
#നിർവ്വചിക്കുക DUAL_AXIS_HOMING_FAIL_DISTANCE_MAX 25.0 // ഫ്ലോട്ട് (മിമി)
#നിർവ്വചിക്കുക DUAL_AXIS_HOMING_FAIL_DISTANCE_MIN 2.5 // ഫ്ലോട്ട് (മിമി)
I2C പോർട്ടിനുള്ള കുറിപ്പ്
Arduino Uno അല്ലെങ്കിൽ 4p-യിലെ I4C പോർട്ടിനായി അനലോഗ് 5 (A5), അനലോഗ് 2 (A328) എന്നിവ ഉപയോഗിക്കുന്നു. ഇതിനർത്ഥം നിങ്ങൾ ഡിഫോൾട്ട് പ്രോബ് ഫംഗ്ഷൻ, മിസ്റ്റ് കൂളന്റ്, ഡ്യുവൽ ആക്സിസ് അല്ലെങ്കിൽ ഇഷ്ടാനുസൃത ALARM_STATE LED ഡയഗ്നോസ്റ്റിക് ലൈറ്റ് ഉപയോഗിക്കുന്നിടത്തോളം, I2C ഉപയോഗിക്കുന്നത് സാധ്യമല്ല എന്നാണ്. പ്രവർത്തനക്ഷമത വർദ്ധിപ്പിക്കുന്നതിന് മറ്റൊരു ആർഡ്വിനോയുമായുള്ള ആശയവിനിമയം D0, D1 എന്നിവയിലെ സീരിയൽ കണക്ഷനിലൂടെ ആയിരിക്കണം.
ആരംഭിക്കുന്നു (സ്റ്റെപ്പർ ഡ്രൈവറുകൾ)
ആദ്യം, നിങ്ങളുടെ സ്റ്റെപ്പർ മോട്ടോറുകൾ Grbl-ലേക്ക് ബന്ധിപ്പിക്കുന്നതിന്, സ്റ്റെപ്പറുകൾ പവർ ചെയ്യുന്നതിനും നിങ്ങളുടെ ഡ്രൈവർ ഇൻപുട്ടുകളെ Arduino കൺട്രോളർ പിന്നുകളിലേക്ക് ബന്ധിപ്പിക്കുന്നതിനും നിങ്ങൾക്ക് കുറച്ച് സ്റ്റെപ്പർ മോട്ടോർ ഡ്രൈവറുകൾ ആവശ്യമാണ്. ഇത് ചെയ്യാൻ കഴിയുന്ന നിരവധി ഡ്രൈവറുകൾ ഉണ്ട്, പൂർണ്ണമായും പ്രീ-ബിൽറ്റ്, ഭാഗികമായി മുൻകൂട്ടി നിർമ്മിച്ചത് അല്ലെങ്കിൽ പൂർണ്ണമായും DIY ആയി ലഭ്യമാണ്. സ്റ്റെപ്പർ ഡ്രൈവർമാർ പങ്കിടേണ്ടതുണ്ട് സ്റ്റെപ്പർ പിൻ (D8) പ്രവർത്തനക്ഷമമാക്കുക അവയുടെ യഥാക്രമം പിൻസ് പ്രവർത്തനക്ഷമമാക്കാൻ, അതേസമയം ദിശയും ഘട്ടവും പൾസ് പിന്നുകൾ (D2-D7) ഡ്രൈവറുകളിലെ അതത് പിന്നുകളുമായി ബന്ധിപ്പിക്കേണ്ടതുണ്ട്. നിങ്ങളുടെ എല്ലാ ഡ്രൈവറുകളും Arduino ഉം ആണെന്ന് ഉറപ്പാക്കുക ഒരു പൊതു ഗ്രൗണ്ട് പങ്കിടുക (നക്ഷത്രം നിങ്ങളുടെ മോട്ടോർ ഡ്രൈവർ പവർ ഉപയോഗിച്ച് അടിസ്ഥാനപ്പെടുത്തി). നിങ്ങൾ ആരംഭിക്കേണ്ട എല്ലാ കാര്യങ്ങളും ഇതാണ്.
ഹോമിംഗ് & ലിമിറ്റ് സ്വിച്ചുകൾ
അതിനുശേഷം, നിങ്ങൾ തയ്യാറാണോ അല്ലെങ്കിൽ ആഗ്രഹിക്കുന്നുവെന്ന് തീരുമാനിച്ചുകഴിഞ്ഞാൽ ഹോമിംഗ് കൂടാതെ/അല്ലെങ്കിൽ ഹാർഡ് പരിധികൾ പ്രവർത്തനക്ഷമമാക്കാൻ, നിങ്ങൾ ഒരു കണക്റ്റ് ചെയ്യേണ്ടതുണ്ട് സാധാരണ-ഓപ്പൺ ലിമിറ്റ് സ്വിച്ച് ഓരോ പരിധി പിന്നുകളിലേക്കും (D9, D10, D12). ഹോമിംഗും ഹാർഡ് പരിധികളും ഒരേ സ്വിച്ചുകൾ ഉപയോഗിക്കുന്നു. ഈ ലിമിറ്റ് പിന്നുകൾ ഇതിനകം തന്നെ ഒരു ആന്തരിക പുൾ-അപ്പ് റെസിസ്റ്റർ ഉപയോഗിച്ച് ഉയർന്ന് പിടിച്ചിരിക്കുന്നു, അതിനാൽ നിങ്ങൾ ചെയ്യേണ്ടത് അവയെ നിലത്ത് വയർ ചെയ്യുക എന്നതാണ്. അതിനാൽ നിങ്ങൾ ഒരു സ്വിച്ച് അടയ്ക്കുമ്പോൾ, സ്വിച്ച് പരിധി പിൻ ഗ്രൗണ്ടിലേക്ക് വലിക്കും. ഒരു അച്ചുതണ്ടിന്റെ യാത്രയുടെ രണ്ടറ്റത്തും ഹാർഡ് ലിമിറ്റ് സ്വിച്ചുകൾ വേണമെങ്കിൽ, ആക്സിസ് ലിമിറ്റ് പിന്നിനും ഗ്രൗണ്ടിനും സമാന്തരമായി രണ്ട് ലിമിറ്റ് സ്വിച്ചുകൾ വയർ ചെയ്യുക. ഒരു ഹോമിംഗ് സൈക്കിൾ നടത്താൻ ശ്രമിക്കുന്നതിന് മുമ്പ് സ്വിച്ചുകൾ ഇൻസ്റ്റാൾ ചെയ്തിട്ടുണ്ടെന്ന് ഉറപ്പുവരുത്തുക, ഇൻപുട്ട് പിന്നുകളിലെ ബാഹ്യ വൈദ്യുത ശബ്ദം കുറയ്ക്കുന്നതിന് നല്ല വയറിംഗ് രീതികൾ പരിശീലിക്കുന്നുണ്ടെന്ന് ഉറപ്പാക്കുക.
നല്ല വയറിംഗ് രീതികളിൽ ഷീൽഡ് കേബിളുകൾ അല്ലെങ്കിൽ cl ഉപയോഗിക്കുന്നത് ഉൾപ്പെട്ടേക്കാംamp-ഓൺ ഫെറൈറ്റ് കേബിൾ കോറുകൾ, കൂടാതെ ഡീബൗൺസ് / നോയ്സ് ഫിൽട്ടറിംഗിനായി പരിധി സ്വിച്ചുകൾക്ക് സമാന്തരമായി ചില 0.1uF കപ്പാസിറ്ററുകൾ ഉപയോഗിക്കുന്നു. മോട്ടോർ വയറുകൾ പരിധി സ്വിച്ച് വയറുകളിൽ നിന്ന് അകറ്റി നിർത്തുന്നതും നല്ല ആശയമായിരിക്കും.
നിങ്ങൾക്ക് വേണമെങ്കിൽ സാധാരണയായി അടച്ച പരിധി സ്വിച്ചുകൾ ഉപയോഗിക്കുന്നതിന് GRBL കോൺഫിഗർ ചെയ്യാൻ സാധിക്കും. ലിമിറ്റ് സ്വിച്ച് തകരാർ സംഭവിക്കുമ്പോൾ, സാധാരണഗതിയിൽ അടച്ച പരിധി സ്വിച്ചുകൾ ഒരു ദുരന്തകരമായ ക്രാഷ് കുറയ്ക്കാൻ സഹായിക്കുമെന്ന് ചിലർ കരുതുന്നു. പല ഉപയോക്താക്കളും ഏതെങ്കിലും പരിധി സ്വിച്ചുകൾ ഉപയോഗിക്കുന്നത് ഒഴിവാക്കുകയും പകരം സോഫ്റ്റ്വെയർ പരിധികൾ തിരഞ്ഞെടുക്കുകയും ചെയ്യുന്നു.
Grbl v0.8-ലും പിന്നീടുള്ളവയിലും, സൈക്കിൾ സ്റ്റാർട്ട്, ഫീഡ് ഹോൾഡ്, റൺടൈം കമാൻഡുകൾ പുനഃസജ്ജമാക്കൽ എന്നിവയുടെ പിൻ-ഔട്ടുകൾ ഉണ്ട്, അതിനാൽ നിങ്ങളുടെ മെഷീനിൽ ഫിസിക്കൽ കൺട്രോൾ ബട്ടണുകൾ ഉണ്ടായിരിക്കും. ലിമിറ്റ് പിന്നുകൾ പോലെ, ഈ പിന്നുകളും ഒരു ആന്തരിക പുൾ-അപ്പ് റെസിസ്റ്റർ ഉപയോഗിച്ച് ഉയരത്തിൽ പിടിച്ചിരിക്കുന്നു, അതിനാൽ നിങ്ങൾ ചെയ്യേണ്ടത് സാധാരണ-ഓപ്പൺ സ്വിച്ച് ഓരോ പിന്നിലേക്കും ഗ്രൗണ്ടിലേക്കും ബന്ധിപ്പിക്കുക എന്നതാണ്. ഇൻപുട്ട് പിന്നുകളിലെ ബാഹ്യ വൈദ്യുത ശബ്ദം കുറയ്ക്കുന്നതിന് നിങ്ങൾ നല്ല വയറിംഗ് രീതികൾ പരിശീലിക്കുന്നുണ്ടെന്ന് വീണ്ടും ഉറപ്പാക്കുക.
സ്പിൻഡിൽ ആൻഡ് കൂളന്റ് പിന്നുകൾ
നിങ്ങൾക്ക് സ്പിൻഡിൽ ഒരു ആഗ്രഹമോ ആവശ്യമോ ഉണ്ടെങ്കിൽ (ഡി 13) അല്ലെങ്കിൽ ശീതീകരണ നിയന്ത്രണം (A3 & A4) , നിങ്ങൾ Grbl-ലേക്ക് അയയ്ക്കുന്ന G-കോഡ് കമാൻഡുകൾ അനുസരിച്ച് Grbl ഈ ഔട്ട്പുട്ട് പിന്നുകൾ ഉയർന്നതോ താഴ്ന്നതോ ടോഗിൾ ചെയ്യും. v0.9+, വേരിയബിൾ സ്പിൻഡിൽ PWM എന്നിവ പ്രവർത്തനക്ഷമമാക്കിയാൽ, D11 പിൻ വോളിയത്തിന്റെ ഒരു ശ്രേണി ഔട്ട്പുട്ട് ചെയ്യുംtagസ്പിൻഡിൽ സ്പീഡ് ജി-കോഡ് കമാൻഡ് അനുസരിച്ച് 0V മുതൽ 5V വരെ. 0V ഈ സാഹചര്യത്തിൽ സ്പിൻഡിൽ ഓഫ് സൂചിപ്പിക്കുന്നു. ഈ പിന്നുകളെല്ലാം അവ എങ്ങനെ ഉപയോഗിക്കുന്നു എന്നതിനെ ആശ്രയിച്ചിരിക്കുന്നതിനാൽ, നിങ്ങളുടെ മെഷീനിൽ ഇവ എങ്ങനെ നിയന്ത്രിക്കാമെന്നും ഉപയോഗിക്കാമെന്നും നിർണ്ണയിക്കാൻ ഞങ്ങൾ അത് നിങ്ങൾക്ക് വിടും. നിങ്ങൾക്ക് സ്പിൻഡിൽ, കൂളന്റ് നിയന്ത്രണ ഉറവിടം ഹാക്ക് ചെയ്യാനും കഴിയും fileഅവ എങ്ങനെ പ്രവർത്തിക്കുന്നു എന്നതിനെ എളുപ്പത്തിൽ മാറ്റുകയും തുടർന്ന് നിങ്ങളുടെ പരിഷ്കരിച്ച Grbl കംപൈൽ ചെയ്യുകയും Arduino IDE വഴി അപ്ലോഡ് ചെയ്യുകയും ചെയ്യുന്നു.
ഡയഗ്നോസ്റ്റിക് LED ലൈറ്റ്
ഒരു മെഷീൻ ക്രാഷോ അലാറം കോഡോ ഉണ്ടായാൽ വാണിജ്യ CNC മെഷീനുകൾക്ക് ഒരു ഡയഗ്നോസ്റ്റിക് LED ബീക്കണെങ്കിലും ഉണ്ടായിരിക്കും. GRBL, DIY CNC മെഷീനുകളിൽ പുതിയവർക്ക്, ഒരു ALARM_STATE എപ്പോൾ സംഭവിച്ചുവെന്ന് അറിയാൻ ഈ സവിശേഷത വളരെ ഉപയോഗപ്രദമാണ് (ഹോമിംഗ്, ലിമിറ്റ് സ്വിച്ചുകൾ പ്രവർത്തനക്ഷമമാക്കിയിട്ടുള്ള മെഷീൻ ഹോം ചെയ്യുന്നതിൽ പരാജയപ്പെടുന്നത് പോലുള്ളവ).
GRBL-ന് സ്ഥിരസ്ഥിതിയായി ഒരു ഡയഗ്നോസ്റ്റിക് LED ലൈറ്റ് ഇല്ല. കാരണം, 328p ചിപ്പുള്ള Ardunio UNO-യ്ക്ക് പരിമിതമായ പ്രോഗ്രാമിംഗ് സ്പേസ് മാത്രമേയുള്ളൂ, മിക്കവാറും എല്ലാ സ്ഥലവും നിലവിൽ ഉപയോഗിക്കുന്നു (എല്ലാം അല്ലെങ്കിലും!). അത്തരം കുറഞ്ഞ മെമ്മറി ഉപകരണത്തിൽ എല്ലാ അഭികാമ്യമായ സവിശേഷതകളും നടപ്പിലാക്കാൻ കഴിയില്ല, അതിനാൽ ചിലപ്പോൾ ത്യാഗങ്ങൾ ചെയ്യേണ്ടിവരും.
കൂടാതെ ലഭ്യമായ എല്ലാ I/O പോർട്ടുകളും നിലവിൽ ഉപയോഗിക്കുന്നു, അത്തരം ഒരു ലൈറ്റിന് കുറഞ്ഞത് ഒരു I/O പിൻ ആവശ്യമാണ്. ഭാഗ്യവശാൽ, GRBL C കോഡ് ഹാക്ക് ചെയ്യുന്നതിലൂടെ ഈ പ്രവർത്തനം എളുപ്പത്തിൽ ചേർക്കാൻ കഴിയും, 3p ചിപ്പിൽ 328% മെമ്മറി ഇപ്പോഴും ലഭ്യമാണ്!
അനലോഗ് 4-ൽ പല മെഷീനുകളും നിലവിൽ ഓപ്ഷണൽ MIST COOLANT ഫീച്ചർ ഉപയോഗിക്കുന്നില്ല, അതിനാൽ നമ്മുടെ ഉപയോഗത്തിനായി ഈ പിൻ എളുപ്പത്തിൽ പുനർനിർവചിക്കാം. ഒരു ബാഹ്യ ആർഡ്വിനോയിൽ അത്തരം എൽഇഡി ലൈറ്റുകൾ കോഡ് ചെയ്യുന്നതായിരിക്കാം ഒരു ഇതര മാർഗ്ഗം, അതിനുശേഷം എല്ലാ ഐ/ഒ പോർട്ടുകളും ലഭ്യമാകും, അവിടെ ഒരാൾക്ക് ആവശ്യമുള്ളത്ര എൽഇഡി ലൈറ്റുകൾ / ബസറുകൾ വയർ ചെയ്യാനും സീരിയൽ അല്ലെങ്കിൽ ഐ2സി വഴി ആശയവിനിമയം നടത്താനും കഴിയും.
CNDY ഷീൽഡിൽ ALARM LED ഉപയോഗിക്കുന്നതിന് GRBL സോഴ്സ് കോഡ് ഹാക്ക് ചെയ്യുന്നതിന് ദയവായി ഇനിപ്പറയുന്നവ ചെയ്യുക:
ഘട്ടം 1: ലിനക്സിലോ മാക്കിന്റോഷിലോ ഒരു ടെക്സ്റ്റ് എഡിറ്റർ തുറന്ന് (വിൻഡോസിൽ നോട്ട്പാഡ്++ ഉപയോഗിക്കുന്നു) എഡിറ്റ് ചെയ്യുക cpu_map.h file:
ഇത് മാറ്റുക:
// ഫ്ളഡ് ആൻഡ് മിസ്റ്റ് കൂളന്റ് ഔട്ട്പുട്ട് പിന്നുകൾ പ്രവർത്തനക്ഷമമാക്കുക.
#COOLANT_FLOOD_DDR DDRC നിർവ്വചിക്കുക
#COOLANT_FLOOD_PORT PORTC നിർവ്വചിക്കുക
#COOLANT_FLOOD_BIT 3 നിർവ്വചിക്കുക // Uno അനലോഗ് പിൻ 3
#COOLANT_MIST_DDR DDRC നിർവ്വചിക്കുക
#COOLANT_MIST_PORT PORTC നിർവ്വചിക്കുക
COOLANT_MIST_BIT 4 // യുനോ അനലോഗ് പിൻ 4 നിർവ്വചിക്കുക
ഇതിലേക്ക്:
// ഫ്ളഡ് ആൻഡ് മിസ്റ്റ് കൂളന്റ് ഔട്ട്പുട്ട് പിന്നുകൾ പ്രവർത്തനക്ഷമമാക്കുക.
#COOLANT_FLOOD_DDR DDRC നിർവ്വചിക്കുക
#COOLANT_FLOOD_PORT PORTC നിർവ്വചിക്കുക
#COOLANT_FLOOD_BIT 3 നിർവ്വചിക്കുക // Uno അനലോഗ് പിൻ 3
//#COOLANT_MIST_DDR DDRC നിർവചിക്കുക
//#COOLANT_MIST_PORT PORTC നിർവചിക്കുക
//#COOLANT_MIST_BIT 4 നിർവചിക്കുക // Uno അനലോഗ് പിൻ 4
//////////////////
// അലാറം LED ഔട്ട്പുട്ട് നിർവചിക്കുക
#SIGNAL_LIGHT_DDR DDRC നിർവചിക്കുക
#സിഗ്നൽ_ലൈറ്റ്_പോർട്ട് പോർട്ട് നിർവ്വചിക്കുക
#SIGNAL_LIGHT_BIT 4 // Uno അനലോഗ് പിൻ 4 നിർവചിക്കുക
// #സിഗ്നൽ_ലൈറ്റ്(ഓൺ) നിർവചിക്കുക (SIGNAL_LIGHT_DDR |= (1<
// #സിഗ്നൽ_ലൈറ്റ്_ഇനിറ്റ് () സിഗ്നൽ_ലൈറ്റ് (ഓഫ്) നിർവചിക്കുക
#സിഗ്നൽ_ലൈറ്റ്_ഇനിറ്റ് സിഗ്നൽ_ലൈറ്റ്_ഓഫ് ചെയ്യുക
#സിഗ്നൽ_ലൈറ്റ്_ഓൺ നിർവ്വചിക്കുക (SIGNAL_LIGHT_DDR |= SIGNAL_LIGHT_PORT |= (1<
#നിർവ്വചിക്കുക സിഗ്നൽ_ലൈറ്റ്_ഓഫ് (SIGNAL_LIGHT_DDR |= SIGNAL_LIGHT_PORT &= ~(1<
//////////////////
ഘട്ടം 2: ലിനക്സിലോ മാക്കിന്റോഷിലോ ഒരു ടെക്സ്റ്റ് എഡിറ്റർ തുറന്ന് (വിൻഡോസിൽ നോട്ട്പാഡ്++ ഉപയോഗിക്കുന്നു) എഡിറ്റ് ചെയ്യുക പ്രോട്ടോക്കോൾ.സി file:
ഇത് മാറ്റുക:
// ആവശ്യമുള്ളപ്പോൾ റൺ-ടൈം കമാൻഡുകൾ എക്സിക്യൂട്ട് ചെയ്യുന്നു. ഈ ഫംഗ്ഷൻ പ്രാഥമികമായി Grbl-ന്റെ സംസ്ഥാനമായി പ്രവർത്തിക്കുന്നു
// മെഷീനും Grbl വാഗ്ദാനം ചെയ്യുന്ന വിവിധ തത്സമയ സവിശേഷതകൾ നിയന്ത്രിക്കുന്നു.
// ശ്രദ്ധിക്കുക: നിങ്ങൾ എന്താണ് ചെയ്യുന്നതെന്ന് കൃത്യമായി അറിയാത്തിടത്തോളം ഇത് മാറ്റരുത്! void protocol_exec_rt_system()
{
uint8_t rt_exec; // അസ്ഥിരമായി ഒന്നിലധികം തവണ വിളിക്കുന്നത് ഒഴിവാക്കാൻ ടെമ്പ് വേരിയബിൾ.
rt_exec = sys_rt_exec_alarm; // അസ്ഥിരമായ sys_rt_exec_alarm പകർത്തുക.
എങ്കിൽ (rt_exec) { // ഏതെങ്കിലും ബിറ്റ് ഫ്ലാഗ് ശരിയാണെങ്കിൽ മാത്രം നൽകുക
// സിസ്റ്റം അലാറം. ഗുരുതരമായ തെറ്റ് സംഭവിച്ചതിനാൽ എല്ലാം അടച്ചുപൂട്ടി. റിപ്പോർട്ട് ചെയ്യുക
// ഉപയോക്താവിന് പിശകിന്റെ ഉറവിടം. നിർണായകമാണെങ്കിൽ, ഒരു അനന്തമായി നൽകി Grbl പ്രവർത്തനരഹിതമാക്കുന്നു
// സിസ്റ്റം റീസെറ്റ്/അബോർട്ട് ചെയ്യുന്നതുവരെ ലൂപ്പ് ചെയ്യുക.
sys.state = STATE_ALARM; // സിസ്റ്റം അലാറം നില സജ്ജമാക്കുക
report_alarm_message(rt_exec);
ഇതിലേക്ക്:
// ആവശ്യമുള്ളപ്പോൾ റൺ-ടൈം കമാൻഡുകൾ എക്സിക്യൂട്ട് ചെയ്യുന്നു. ഈ ഫംഗ്ഷൻ പ്രാഥമികമായി Grbl-ന്റെ സംസ്ഥാനമായി പ്രവർത്തിക്കുന്നു
// മെഷീനും Grbl വാഗ്ദാനം ചെയ്യുന്ന വിവിധ തത്സമയ സവിശേഷതകൾ നിയന്ത്രിക്കുന്നു.
// ശ്രദ്ധിക്കുക: നിങ്ങൾ എന്താണ് ചെയ്യുന്നതെന്ന് കൃത്യമായി അറിയാത്തിടത്തോളം ഇത് മാറ്റരുത്!
void protocol_exec_rt_system()
{
uint8_t rt_exec; // അസ്ഥിരമായി ഒന്നിലധികം തവണ വിളിക്കുന്നത് ഒഴിവാക്കാൻ ടെമ്പ് വേരിയബിൾ.
rt_exec = sys_rt_exec_alarm; // അസ്ഥിരമായ sys_rt_exec_alarm പകർത്തുക.
//////////////////////
// അലാറം LED ഔട്ട്പുട്ട് നിർവചിക്കുക
സിഗ്നൽ_ലൈറ്റ്_ഇനിറ്റ്; //ഇനിറ്റ് LED ഓഫ് സ്റ്റേറ്റിൽ
എങ്കിൽ (sys.state==STATE_ALARM) {signal_light_on;}
അല്ലെങ്കിൽ (sys.state!=STATE_ALARM) {signal_light_off;}
// മറ്റുള്ളവ {signal_light_off;}
//////////////////////
എങ്കിൽ (rt_exec) { // ഏതെങ്കിലും ബിറ്റ് ഫ്ലാഗ് ശരിയാണെങ്കിൽ മാത്രം നൽകുക
// സിസ്റ്റം അലാറം. ഗുരുതരമായ തെറ്റ് സംഭവിച്ചതിനാൽ എല്ലാം അടച്ചുപൂട്ടി. റിപ്പോർട്ട് ചെയ്യുക
// ഉപയോക്താവിന് പിശകിന്റെ ഉറവിടം. നിർണായകമാണെങ്കിൽ, ഒരു അനന്തമായി നൽകി Grbl പ്രവർത്തനരഹിതമാക്കുന്നു
// സിസ്റ്റം റീസെറ്റ്/അബോർട്ട് ചെയ്യുന്നതുവരെ ലൂപ്പ് ചെയ്യുക.
sys.state = STATE_ALARM; // സിസ്റ്റം അലാറം നില സജ്ജമാക്കുക
report_alarm_message(rt_exec);
ഞങ്ങൾ ഇപ്പോൾ ചെയ്തത് അനലോഗ് 4 (A4) ന്റെ നിർവചിക്കപ്പെട്ട പ്രവർത്തനത്തെ ഓപ്ഷണൽ മിസ്റ്റ് കൂളന്റ് എന്നതിൽ നിന്ന് ഞങ്ങളുടെ എൽഇഡി ലൈറ്റാക്കി മാറ്റുക എന്നതാണ്. തുടർന്ന് (പിസി4) പോർട്ട് സി 4 (അനലോഗ് 4) ഓണാക്കണോ ഓഫാക്കണോ എന്നതിനെ ആശ്രയിച്ച് ഉയർന്നതോ കുറവോ എഴുതാൻ കഴിയുന്ന തരത്തിൽ ഞങ്ങൾ സിയിൽ കോഡ് എഴുതി. തുടർന്ന്, GRBL സ്റ്റേറ്റ് മെഷീൻ പരിശോധിച്ച് ഞങ്ങൾ ഒരു സജീവ ALARM_STATE-ൽ ആണോ എന്നും എൽഇഡി എപ്പോൾ ഓണാക്കണം എന്നും ഞങ്ങളോട് പറയുന്നതിന് ഞങ്ങൾ ഒരു ലളിതമായ if-else പ്രസ്താവന എഴുതി.
എല്ലാം ശരിയാണെങ്കിൽ, നമുക്ക് Arduino IDE-ൽ കംപൈൽ ചെയ്യാനും കോഡ് അപ്ലോഡ് ചെയ്യാനും കഴിയും, ഇപ്പോൾ ഞങ്ങൾക്ക് പ്രവർത്തിക്കുന്ന ALARM_STATE LED ഡയഗ്നോസ്റ്റിക് ലൈറ്റ് ലഭിക്കും! മുറിയിലുടനീളം ദൃശ്യമാകുന്ന മെഷീന് മുകളിൽ സ്ഥാപിക്കാൻ ഞങ്ങൾക്ക് ഒരു ബാഹ്യ LED ബീക്കൺ ലൈറ്റ് ഓപ്ഷണലായി ബന്ധിപ്പിക്കാം.
സാധ്യമായ പ്രശ്നങ്ങൾ
ലഭ്യമായ ഏറ്റവും നിലവിലുള്ള grbl സോഴ്സ് കോഡ് ഉപയോഗിച്ചാണ് ഈ മാറ്റങ്ങൾ ചെയ്യുന്നത്, കൂടാതെ grbl “ലൈബ്രറി” Arduino IDE-യിലേക്ക് ചേർക്കുന്നതിന് മുമ്പ് ഇത് വരുത്തും. നിങ്ങളുടെ Arduino ലൈബ്രറികളുടെ ഫോൾഡറിൽ നിങ്ങൾക്ക് ഇതിനകം grbl ഉണ്ടെങ്കിൽ, നിങ്ങൾ സ്വമേധയാ ബ്രൗസ് ചെയ്യുകയും grbl ഫോൾഡർ ഇല്ലാതാക്കുകയോ എഡിറ്റുചെയ്യുകയോ ചെയ്യേണ്ടതുണ്ട് fileആർഡ്വിനോ ലൈബ്രറിക്കുള്ളിൽ എസ്. എന്റെ ലിനക്സ് മെഷീനിൽ "ലൈബ്രറി" ഇവിടെ കാണപ്പെടുന്നു: /home/andrew/Arduino/libraries/grbl. ഏറ്റവും പുതിയ grbl റിലീസ് ഇവിടെ കാണാം https://github.com/gnea/grbl/releases. ഒരാൾക്ക് ലഭ്യമായ സിപ്പ് ഡൗൺലോഡ് ചെയ്യാം file ഒപ്പം grbl-1.1h.20190825 എന്ന പേരിലുള്ള ഒരു ഫോൾഡറും ഉള്ളിൽ കാണാം. ഈ ഫോൾഡറിനുള്ളിൽ grbl എന്ന് പേരുള്ള ഒരു ഫോൾഡർ ആയിരിക്കും നിങ്ങൾ Arduino IDE-ലേക്ക് "ലൈബ്രറി" "zip" ആയി ചേർക്കാൻ ആഗ്രഹിക്കുന്നത്. file”. cpu_map.h, protocol.c എന്നിവയിൽ നിങ്ങളുടെ മാറ്റങ്ങൾ വരുത്തുന്നത് ഉറപ്പാക്കുക fileനിങ്ങൾ ഇത് Arduino IDE-ലേക്ക് ചേർക്കുന്നതിന് മുമ്പ്. അല്ലെങ്കിൽ, നിങ്ങൾ എഡിറ്റ് ചെയ്യേണ്ടതുണ്ട് fileനിങ്ങളുടെ ലൈബ്രറികൾ/grbl ഫോൾഡറിനുള്ളിൽ. grbl-1.1h zip-ൽ ഡ്യുവൽ ആക്സിസ് ഫീച്ചറിന് ഒരു ബഗ് ഉണ്ട് file, പകരം നിങ്ങൾ പ്രധാന grbl ബ്രാഞ്ച് ഡൗൺലോഡ് ചെയ്താൽ അത് പരിഹരിക്കപ്പെടും. https://github.com/gnea/grbl
CNDY ഷീൽഡ് അപ്ഡേറ്റുകളും പിശകുകളും
*V1.1: സ്പിൻഡിൽ പിഡബ്ല്യുഎമ്മും സ്പിൻഡിൽ ദിശയും സ്വാപ്പ് ചെയ്യുന്ന ഒരു ചെറിയ സിൽക്ക്സ്ക്രീൻ പിശക് ഉണ്ട്. ഇത് V1.2-ൽ തിരുത്തിയിട്ടുണ്ട്.
V1.2 ന് ഇനി 5v ലൈനിൽ ഓപ്ഷണൽ നോയ്സ് റിഡക്ഷൻ കപ്പാസിറ്ററുകൾ ഇല്ല, കൂടാതെ മറ്റ് ഇൻപുട്ട് ബട്ടൺ ലൈനുകളിൽ പുതിയവയും ഉണ്ട്. V1.2, Spindle PWM-ന് സമാന്തരമായി വയർ ചെയ്ത ഒരു ഓപ്ഷണൽ LED ഉണ്ട്. സുരക്ഷയ്ക്കായി ലേസർ സജ്ജീകരണങ്ങൾക്ക് ഇത് ഉപയോഗപ്രദമാകും.
ഓഗസ്റ്റ്-28-2021 അപ്ഡേറ്റ് ചെയ്തത്
കൂടുതൽ വിവരങ്ങൾ ഇവിടെ കാണാം RabbitMountainResearch.com.
പ്രമാണങ്ങൾ / വിഭവങ്ങൾ
![]() |
CNDY ഷീൽഡ് GRBL CNC Arduino UNO [pdf] ഉപയോക്തൃ ഗൈഡ് GRBL CNC, Arduino UNO |