sains dan teknologi
Senin, 04 September 2023
qtreadpyqt
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QWidget, QLabel, QPushButton, QVBoxLayout, QProgressBar
from PyQt5.QtCore import QThread, QObject, pyqtSignal as Signal, pyqtSlot as Slot
import time
#The Worker class has two signals:
#mewarisi dari sinyal qobjek
#progress
#completed
#Kelas Pekerja akan memancarkan sinyal kemajuan
#ketika sebagian pekerjaan telah
#selesai dan sinyal selesai ketika pekerjaan telah selesai.
class Worker(QObject):
progress = Signal(int)
completed = Signal(int)
#Metode do_work() memiliki dekorator @Slot() (atau pyqtSlot). Dekorator @Slot() mengubah metode do_work() menjadi slot.
#Dekorator @Slot() bersifat opsional. Namun, menghubungkan sinyal ke metode Python yang dihias dapat membantu mengurangi penggunaan memori dan membuatnya sedikit lebih cepat.
#Metode do_work() menerima bilangan bulat. Ini mengulangi rentang mulai dari 1 hingga argumen. Dalam setiap iterasi, ia berhenti selama satu detik menggunakan time.sleep() dan memancarkan sinyal kemajuan dengan nilai saat ini menggunakan metode emit().
#Setelah selesai, metode do_work() memancarkan sinyal selesai dengan nilai nilai integer terakhir.
#Berkomunikasi antara thread utama dan thread pekerja
@Slot(int)
def do_work(self):
print ("halo")
n=3
for i in range(1, n+1):
time.sleep(1)
self.progress.emit(5)#mengembalikan nilai v
self.completed.emit(i)# mengembalikan nilai int v
class MainWindow(QMainWindow):
#First, create a signal in the MainWindow class:
work_requested = Signal(int)
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.setGeometry(100, 100, 300, 50)
self.setWindowTitle('QThread Demo')
# setup widget
self.widget = QWidget()
layout = QVBoxLayout()
self.widget.setLayout(layout)
self.setCentralWidget(self.widget)
self.progress_bar = QProgressBar(self)
self.progress_bar.setValue(0)
self.btn_start = QPushButton('Start', clicked=self.start)
layout.addWidget(self.progress_bar)
layout.addWidget(self.btn_start)
#Second, create a Worker object and worker thread:
self.worker = Worker()
self.worker_thread = QThread()
#Third, connect the progress and completed signal of the worker object with the methods of the main window:
self.worker.progress.connect(self.update_progress)#jika terdapat sinyal progres akan dijalnkan f update progres
self.worker.completed.connect(self.complete)
#Fourth, connect the work_requested signal of the MainWindow with the do_work method of the worker object:
self.work_requested.connect(self.worker.do_work)#konek kedalam funsi dowork self.work_requested.emit(2)#menjalankan tread 2x
#Fifth, move the worker to the worker thread by calling the moveToThread() method:
# move worker to the worker thread
self.worker.moveToThread(self.worker_thread)
#Finally, start the worker thread:
# start the thread
self.worker_thread.start()
# show the window
self.show()
def start(self):
#self.btn_start.setEnabled(False)
n =100
self.progress_bar.setMaximum(n)
self.work_requested.emit(2)#menjalankan tread 2x pengganti do work funsi diclass worker
def update_progress(self, v):#nilai v diambil dari emit signal progres
self.progress_bar.setValue(v)
def complete(self, v):
self.progress_bar.setValue(v)
self.btn_start.setEnabled(True)
if __name__ == '__main__':
app = QApplication(sys.argv)
window = MainWindow()
sys.exit(app.exec())
Senin, 20 Februari 2023
Rabu, 09 Februari 2022
Selasa, 01 Februari 2022
Jumat, 24 September 2021
mysql comand
perintah pada mysql
agar bisa diakses dari lan komputer diluar server
tambahkan ip server karenq kalo belum ditambahkan akan di localhost saja
berikan ijin akses dari ip lan diluar hosrt dengan cara grant all on * .* to root@'iplankomptrluar' identified 'paswordroot'
hapus hak akses dengan drop user namauser@ipaksesnya
1.masuk database =mysql --username=root --password =amin1234
2 membuat databases baru= create database namadatabase
3 melihat database yang ada=show databases
4 masuk databases =use namadatabases
5 membuat table didatabase= create table tabelku(nama varchar(20) NOT NULL PRIMARI KEY,umur int(4));
5 melihat strukture table= describe namatable
6 masukan data ke table= insert into namatable values(isi1 ,isi2);
7 melihat isi table = select * from namatable
8 melihat isi table dari kolom tertentu = select namacolomnya from namatable
9 melihat baris dengan no id atau nama ywng afa di komponennya = select * from tableku where id=3;
menambah user pada mysql
1 create user nama@localhost identified by 'passwordnya';
2 melihat hak akses pengguna =show grants for nama@localhost;
3 hak pada akun pengguna meliputi=
a.all privelege hak istimewa bisa semuanya
b create bisa membuat database dan table
c drop bisa hapus database dan table
d delete hapus dari table saja
e insert masukan data ke table saja
f select membaca table saja
g update memperbarui isi table
3.memberikan hak
GRANT permission1, permission2 ON
nama_database.nama_tabel TO
'user_database'@'localhost';
4.
- Memberikan semua hak istimewa ke akun pengguna untuk database tertentu :
GRANT ALL PRIVILEGES ON nama_database.* TO 'user_database'@'localhost';
- Memberikan semua hak istimewa ke akun pengguna untuk semua database :
GRANT ALL PRIVILEGES ON *.* TO
'user_database'@'localhost';
- Berikan semua hak istimewa ke akun pengguna untuk tabel tertentu dari database:
GRANT ALL PRIVILEGES ON n
ama_database.nama_tabel TO 'user_database'@'localhost';
- Berikan hanya beberapa hak istimewa ke akun pengguna untuk database tertentu:
GRANT SELECT, INSERT, DELETE ON nama_database.* TO user_database@'localhost';
mencabut semua hak user DROP USER 'user_database'@'localhost'
Rabu, 23 Juni 2021
parameter seting grbl
$$ lihat pengatiran grbl
$x=val simpan pengaturan grbl
$0 langkah pulsa untuk pulsa pulsa stepper
$1 penundaan waktu menganggur dlm milidetik.setiap stepper melakukan pergerakan dan berhenti stepper akan menunda mematikan daya ke stepper.anda bis selalu menjaga agar stepper tidak los dengan memberikan nilai ini 255
$2 sinyal pulsa biasanya akan dimulai dari rendah ke tinggi dengan panjang pulsa di atir dengan $0,pulsa ini dapat diatur dimasing2 pin pulse steppernya dengan nilao biner
x y z kalo nilai bin nya 111 maka pulse dibalik semua di sumbu masing2
$3 membalikan arah stepper nilainy sama dengan $2
$4 untuk meng membalikan pin yang digunakan untuk enablekan steper driver cukup ketik $4=1 maka pin enable akan beru ah
$5 untuk saklar pada endstop defaulnya akan aktif triger apabila dapat sinyal low karena sudah pullup di internalnya kalp mau balikan tinggal ganti ini dengan nai $5=1
$6 invert pin probe
$10 laporan setatus mesin,default mesin mengirimkan data lokasi dan laporan setatus dimirim.ada tambahan lainnya untk melihat setatus saat sedang di seting misalnya denhan urutan zyx jika anda ingin mengaktifkan laporan tambahan cukup masukan nilainya dan tambahkan misa untuk tambhan laporan posisi mesin dan posisi kerja $10=3 berikut data kodenya
posisi mesin 1
posisi keeja 2
penyangga berencana 4
penyangga rx 8
batas pin 16
$11 belok pada saat motong dlm mm
misal saat mesn akan belok maka perlu melambat agar tidak bablasen nilai lebih rendah akan lebih hati2 dan sebaliknha
$12 toleransi untuk kehalusan potong longkaran semakin kecil nilai akan semakin halus defunya 0.02
$13 laporan waktu nyata daporkan bisa dengan ichi atau mm $13=0 unk mm
$20 batas kerja perjalanan sumbu dengam sofwatre anda bisa membatasi maksimum jarak sumbu bisa berjalan.pengatiran ini membutuhkan data homming $20=1 aktif
$21 batas keras dengan saklar diujung sumbu aktif 1.batas keras itu kritis maka akan mematikan stepper dan semuannya grbl jg kehilangan k
jejak
$22 siklus pulang bol
ini digunakan pada saat anda sedang bekerja dan lostrik mati maka data awal mulai mengerjakan bisa di ambil lagi sehinnga kita bisa memulai ulang pekerjaan dengan titik awal yang sama dengan sebelumnya.saratnya adalah mengatur sakalr di ujung sumbu dengan benar.data awal disompan di eeprom....ada banyak konfigurasi di program dengan mengedi di header file config.h
$23 homing invert misal anda pasang saklar di awal sumbu yang boasa diujung sumbu anda bisa merubahnya nai ini sama dengan nilai invert beberapa inverr lainnya
$24 umpan rumah homong....misal mesin anda akan bergerak kearah positif sampai menemulan saklar homong dan pada saat mbalik maka percepatan akan melambat disini bisa diatur dengan merubah nilai ini
$25 pada saat menvari saklar percwptan ino bisa diatir dengan nilai disini
$26 debouncing homing saklar biasanya akan debounchng saat aktif pada saat menyentuh saklar maka akan dijeda dengan nilai ini dlm mili detik
$27 pada saat selesai maka saat saklar kesentuh akan merusak homingnya dan aka merubah sehalanya maka $27 perlu diaktifkan
$120 akselarasi yaitu percepatan untuk ke laju maksimum lebih besae nilainya lebih vepat
perintah $ lainnya
$# lihat parameter kode g54 g 59 posisi yang ditentukan sebelumnya g28 g30 ofset koordinat di g92 panjang pahat dan probing
yang tidak disimpan adalah data panjang pahat. data probing
koordinat g54 dan g59 dapat dirubah melalui perintah g10 L2 Px
g28 g30 melalui g28.1 dan g30.1
saat s# dipanggi akan mengeluarkan panjang pahat dan probing
$G status parser gcode.........belum paham
$N lihat blok start up ada 2 kode yang bosa dijalankan pada saat start up dengan menulis $N0= perintahnya dan $N1=
hati2 menyimpan perintah dengan g0 /1 g2 /3 g28/30 karena pada saat reset start up akan membahayakan msin dan janga perinta mengandung eeprom sprt g10/28.1/30.1
jika anda mengaktifkam homming maka akan menjalankan hominh dulu bari kode in
$c perijsa mode g
menjalankan kode gcode tapi tidak menjalankan apapun ini hanya u tuk mpde chek saja
$x bunuh kunci alarm
$RST=$ menghapus dan mengembalikan setelan default
$RST=#Menghapus dan menihilkan semua offset koordinat kerja G54-G59 dan posisi G28/30 yang disimpan di EEPROM. Ini umumnya nilai yang terlihat pada
$#
cetakan parameter. Ini memberikan cara mudah untuk menghapusnya tanpa harus melakukannya secara manual untuk setiap set dengan a G20 L2/20
atau G28.1/30.1
perintah$RST=*Ini menghapus dan memulihkan semua data EEPROM yang digunakan oleh Grbl. Ini termasuk
$$
pengaturan, $#
parameter, $N
baris startup, dan$I
membangun info string. Perhatikan bahwa ini tidak menghapus seluruh EEPROM, hanya area data yang digunakan Grbl. Untuk melakukan penghapusan total, perintah realtime kapan aja
Grbl v1.1 telah dirilis di situs baru kami! Situs lama pada akhirnya akan dihapus.
Sienci Labs- Learn how to adjust your acceleration settings to 'overclock' your machine. The default speeds of the Mill One have been set to be relatively slow,. For a complete list of GRBL Settings, download the GRBL Settings Pocket Guide Maximum Speed – GRBL Definition. Max Rate – Sets the maximum speed for a given axis. The machine will not move faster than the values set here. This is the feed rate the machine will use when you type a G00 command.
Quick-Links:
Getting Started
First, connect to Grbl using the serial terminal of your choice.
Set the baud rate to 115200 as 8-N-1 (8-bits, no parity, and 1-stop bit.)
Once connectedyou should get the Grbl-prompt, which looks like this:
Type $ and press enter to have Grbl print a help message. You should not see any local echo of the $ and enter. Grbl should respond with:
The ‘$’-commands are Grbl system commands used to tweak the settings, view or change Grbl's states and running modes, and start a homing cycle. The last fournon-'$' commands are realtime control commands that can be sent at anytime, no matter what Grbl is doing. These either immediately change Grbl's running behavior or immediately print a report of the important realtime data like current position (aka DRO).
Grbl Settings
$$ - View Grbl settings
To view the settings, type
$$
and press enter after connecting to Grbl. Grbl should respond with a list of the current system settings, as shown in the example below. All of these settings are persistent and kept in EEPROM, so if you power down, these will be loaded back up the next time you power up your Arduino.$x=val - Save Grbl setting
The
$x=val
command saves or alters a Grbl setting, which can be done manually by sending this command when connected to Grbl through a serial terminal program, but most Grbl GUIs will do this for you as a user-friendly feature.To manually change e.g. the microseconds step pulse option to 10us you would type this, followed by an enter:
If everything went well, Grbl will respond with an 'ok' and this setting is stored in EEPROM and will be retained forever or until you change them. You can check if Grbl has received and stored your setting correctly by typing
$$
to view the system settings again.Grbl's $x=val
settings and what they mean
NOTE: Settings numbering has changed since v0.8c for future-proofing purposes.
$0 – Step pulse, microseconds
Stepper drivers are rated for a certain minimum step pulse length. Check the data sheet or just try some numbers. You want the shortest pulses the stepper drivers can reliably recognize. If the pulses are too long, you might run into trouble when running the system at very high feed and pulse rates, because the step pulses can begin to overlap each other. We recommend something around 10 microseconds, which is the default value.
$1 - Step idle delay, msec
Every time your steppers complete a motion and come to a stop, Grbl will delay disabling the steppers by this value. OR, you can always keep your axes enabled (powered so as to hold position) by setting this value to the maximum 255 milliseconds. Again, just to repeat, you can keep all axes always enabled by setting
$1=255
.The stepper idle lock time is the time length Grbl will keep the steppers locked before disabling. Depending on the system, you can set this to zero and disable it. On others, you may need 25-50 milliseconds to make sure your axes come to a complete stop before disabling. This is to help account for machine motors that do not like to be left on for long periods of time without doing something. Also, keep in mind that some stepper drivers don't remember which micro step they stopped on, so when you re-enable, you may witness some 'lost' steps due to this. In this case, just keep your steppers enabled via
$1=255
.$2 – Step port invert mask:binary
This setting inverts the step pulse signal. By default, a step signal starts at normal-low and goes high upon a step pulse event. After a step pulse time set by
$0
, the pin resets to low, until the next step pulse event. When inverted, the step pulse behavior switches from normal-high, to low during the pulse, and back to high. Most users will not need to use this setting, but this can be useful for certain CNC-stepper drivers that have peculiar requirements. For example, an artificial delay between the direction pin and step pulse can be created by inverting the step pin.This invert mask setting is a value which stores the axes to invert as bit flags. You really don't need to completely understand how it works. You simply need to enter the settings value for the axes you want to invert. For example, if you want to invert the X and Z axes, you'd send
$2=5
to Grbl and the setting should now read $2=5 (step port invert mask:00000101)
.Setting Value | Mask | Invert X | Invert Y | Invert Z |
---|---|---|---|---|
0 | 00000000 | N | N | N |
1 | 00000001 | Y | N | N |
2 | 00000010 | N | Y | N |
3 | 00000011 | Y | Y | N |
4 | 00000100 | N | N | Y |
5 | 00000101 | Y | N | Y |
6 | 00000110 | N | Y | Y |
7 | 00000111 | Y | Y | Y |
$3 – Direction port invert mask:binary
This setting inverts the direction signal for each axis. By default, Grbl assumes that the axes move in a positive direction when the direction pin signal is low, and a negative direction when the pin is high. Often, axes don't move this way with some machines. This setting will invert the direction pin signal for those axes that move the opposite way.
This invert mask setting works exactly like the step port invert mask and stores which axes to invert as bit flags. To configure this setting, you simply need to send the value for the axes you want to invert. Use the table above. For example, if want to invert the Y axis direction only, you'd send
$3=2
to Grbl and the setting should now read $3=2 (dir port invert mask:00000010)
$4 - Step enable invert, bool
By default, the stepper enable pin is high to disable and low to enable. If your setup needs the opposite, just invert the stepper enable pin by typing
$4=1
. Disable with $4=0
. (May need a power cycle to load the change.)$5 - Limit pins invert, bool
By default, the limit pins are held normally-high with the Arduino's internal pull-up resistor. When a limit pin is low, Grbl interprets this as triggered. For the opposite behavior, just invert the limit pins by typing
$5=1
. Disable with $5=0
. You may need a power cycle to load the change.NOTE: If you invert your limit pins, you will need an external pull-down resistor wired in to all of the limit pins to prevent overloading the pins with current and frying them.
$6 - Probe pin invert, bool
By default, the probe pin is held normally-high with the Arduino's internal pull-up resistor. When the probe pin is low, Grbl interprets this as triggered. For the opposite behavior, just invert the probe pin by typing
$6=1
. Disable with $6=0
. You may need a power cycle to load the change.$10 - Status report mask:binary
This setting determines what Grbl real-time data it reports back to the user when a '?' status report is sent. By default, Grbl will send back its running state (can't be turned off), machine position, and work position (machine position with coordinate offsets and other offsets applied). Three additional reporting features are available that are useful for interfaces or users setting up their machines, which include the serial RX buffer, planner block buffer usage, and limit pin states (as high or low, shown in the order ZYX).
To set them, use the table below to determine what data you'd like Grbl to send back. Select the report types you'd like to see in the status reports and add their values together. This is the value you use to send to Grbl. For example, if you need machine and work positions, add the values 1 and 2 and send Grbl
$10=3
to set it. Or, if you need machine position only and limit pin state, add the values 1 and 16 and send Grbl$10=17
.Secara umum, pertahankan data status waktu nyata ini seminimal mungkin, karena dibutuhkan sumber daya untuk mencetak dan mengirim data ini kembali dengan kecepatan tinggi. Misalnya, pelaporan batas pin umumnya hanya diperlukan saat pengguna menyiapkan mesin mereka. Setelah itu, disarankan untuk menonaktifkannya, karena tidak terlalu berguna setelah Anda mengetahui semuanya.
Tipe laporan | Nilai |
---|---|
Posisi Mesin | 1 |
Posisi kerja | 2 |
Penyangga Perencana | 4 |
Penyangga RX | 8 |
Batasi Pin | 16 |
$11 - Simpangan simpangan, mm
Simpangan simpangan digunakan oleh manajer percepatan untuk menentukan seberapa cepat ia dapat bergerak melalui persimpangan segmen garis dari jalur program kode-G. Misalnya, jika jalur kode-G memiliki belokan tajam 10 derajat dan mesin bergerak dengan kecepatan penuh, pengaturan ini membantu menentukan seberapa banyak mesin perlu melambat untuk melewati tikungan dengan aman tanpa kehilangan langkah.
Cara kami menghitungnya agak rumit, tetapi, secara umum, nilai yang lebih tinggi memberikan gerakan lebih cepat melalui tikungan, sekaligus meningkatkan risiko kehilangan langkah dan posisi. Nilai yang lebih rendah membuat manajer akselerasi lebih berhati-hati dan akan menyebabkan tikungan yang hati-hati dan lebih lambat. Jadi jika Anda mengalami masalah di mana mesin Anda mencoba mengambil tikungan terlalu cepat, kurangi nilai ini untuk membuatnya melambat saat memasuki tikungan. Jika Anda ingin mesin Anda bergerak lebih cepat melalui persimpangan, tingkatkan nilai ini untuk mempercepatnya. Untuk orang yang penasaran, klik tautan ini untuk membaca tentang algoritma menikung Grbl, yang memperhitungkan kecepatan dan sudut persimpangan dengan metode yang sangat sederhana, efisien, dan kuat.
$12 – Toleransi busur, mm
Grbl merender lingkaran, busur, dan heliks G2/G3 dengan membaginya menjadi garis-garis kecil yang sangat kecil, sehingga akurasi penelusuran busur tidak pernah di bawah nilai ini. Anda mungkin tidak perlu menyesuaikan pengaturan ini, karena
0.002mm
jauh di bawah akurasi sebagian besar mesin CNC. Tetapi jika Anda menemukan bahwa lingkaran Anda terlalu kasar atau penelusuran busur berjalan lambat, sesuaikan pengaturan ini. Nilai yang lebih rendah memberikan presisi yang lebih tinggi tetapi dapat menyebabkan masalah kinerja dengan membebani Grbl dengan terlalu banyak garis kecil. Bergantian, nilai yang lebih tinggi melacak ke presisi yang lebih rendah, tetapi dapat mempercepat kinerja busur karena Grbl memiliki lebih sedikit garis untuk ditangani.Untuk yang penasaran, toleransi busur didefinisikan sebagai jarak tegak lurus maksimum dari segmen garis dengan titik ujungnya terletak pada busur, alias akord.Dengan beberapa geometri dasar, kami memecahkan panjang segmen garis untuk melacak busur yang memenuhi pengaturan ini. Pemodelan busur dengan cara ini sangat bagus, karena segmen garis busur secara otomatis menyesuaikan dan menskalakan dengan panjang untuk memastikan kinerja penelusuran busur yang optimal, tanpa kehilangan akurasi.
$13 - Laporkan inci, bool
Grbl memiliki fitur pelaporan pemosisian waktu-nyata untuk memberikan umpan balik pengguna tentang di mana mesin berada tepat pada waktu itu, serta parameter untuk offset koordinat dan probing. Secara default, ini diatur untuk melaporkan dalam mm, tetapi dengan mengirim
$13=1
perintah, Anda mengirim tanda boolean ini ke true dan fitur pelaporan ini sekarang akan melaporkan dalam inci. $13=0
untuk mengatur kembali ke mm.$20 - Batas lunak, bool
Batas lunak adalah fitur keselamatan untuk membantu mencegah alat berat Anda berjalan terlalu jauh dan melampaui batas perjalanan, menabrak, atau merusak sesuatu yang mahal. Ia bekerja dengan mengetahui batas perjalanan maksimum untuk setiap sumbu dan di mana Grbl berada dalam koordinat mesin. Setiap kali gerakan kode-G baru dikirim ke Grbl, ia memeriksa apakah Anda secara tidak sengaja telah melampaui ruang mesin Anda atau tidak. Jika Anda melakukannya, Grbl akan segera mengeluarkan penahan umpan di mana pun itu berada, mematikan spindel dan pendingin, dan kemudian mengatur alarm sistem yang menunjukkan masalah. Posisi mesin akan dipertahankan setelahnya, karena bukan karena penghentian paksa langsung seperti batas keras.
CATATAN: Batas lunak memerlukan homing untuk diaktifkan dan pengaturan perjalanan maksimum sumbu yang akurat, karena Grbl perlu mengetahui di mana letaknya.
$20=1
untuk mengaktifkan, dan$20=0
untuk menonaktifkan.$21 - Batas keras, bool
Batas keras bekerja pada dasarnya sama dengan batas lunak, tetapi gunakan sakelar fisik sebagai gantinya.Pada dasarnya Anda memasang beberapa sakelar (mekanis, magnetik, atau optik) di dekat ujung perjalanan setiap sumbu, atau di mana pun Anda merasa bahwa mungkin ada masalah jika program Anda bergerak terlalu jauh ke tempat yang seharusnya tidak. Saat sakelar dipicu, ia akan segera menghentikan semua gerakan, mematikan pendingin dan spindel (jika terhubung), dan masuk ke mode alarm, yang memaksa Anda untuk memeriksa mesin Anda dan mengatur ulang semuanya.
Untuk menggunakan batas keras dengan Grbl, pin batas ditahan tinggi dengan resistor pull-up internal, jadi yang harus Anda lakukan hanyalah menyambungkan sakelar yang biasanya terbuka dengan pin dan arde dan mengaktifkan batas keras dengan
$21=1
. (Nonaktifkan dengan $21=0
.) Kami sangat menyarankan untuk mengambil tindakan pencegahan gangguan listrik. Jika Anda menginginkan batas untuk kedua ujung perjalanan satu sumbu, cukup sambungkan dua sakelar secara paralel dengan pin dan ground, jadi jika salah satu dari mereka trip, itu memicu batas keras.Perlu diingat, bahwa peristiwa batas keras dianggap sebagai peristiwa kritis, di mana stepper segera berhenti dan kemungkinan akan kehilangan langkah.Grbl tidak memiliki umpan balik tentang posisi, jadi tidak dapat menjamin ia tahu di mana posisinya. Jadi, jika batas keras dipicu, Grbl akan masuk ke mode ALARM loop tak terbatas, memberi Anda kesempatan untuk memeriksa mesin Anda dan memaksa Anda untuk mengatur ulang Grbl. Ingat itu murni fitur keamanan.
$22 - Siklus pulang, bool
Ah, pulang. Bagi mereka yang baru memulai ke CNC, siklus homing digunakan untuk secara akurat dan tepat menemukan posisi yang diketahui dan konsisten pada mesin setiap kali Anda memulai Grbl di antara sesi. Dengan kata lain, Anda tahu persis di mana Anda berada pada waktu tertentu, setiap waktu. Katakanlah Anda mulai mengerjakan sesuatu atau akan memulai langkah berikutnya dalam suatu pekerjaan dan listrik padam, Anda memulai kembali Grbl dan Grbl tidak tahu di mana itu. Anda memiliki tugas untuk mencari tahu di mana Anda berada. Jika Anda memiliki homing, Anda selalu memiliki titik referensi nol mesin untuk ditemukan, jadi yang harus Anda lakukan adalah menjalankan siklus homing dan melanjutkan di mana Anda tinggalkan.
Untuk mengatur siklus homing untuk Grbl, Anda harus memiliki sakelar batas dalam posisi tetap yang tidak akan terbentur atau dipindahkan, atau titik referensi Anda akan kacau. Biasanya mereka dipasang di titik terjauh di +x, +y, +z dari setiap sumbu. Pasang sakelar batas Anda dengan pin batas dan arde, seperti halnya dengan batas keras, dan aktifkan homing. Jika Anda penasaran, Anda dapat menggunakan sakelar batas Anda untuk batas keras DAN homing. Mereka bermain baik satu sama lain.
Secara default, siklus homing Grbl menggerakkan sumbu Z positif terlebih dahulu untuk membersihkan ruang kerja dan kemudian menggerakkan sumbu X dan Y secara bersamaan ke arah positif. Untuk mengatur bagaimana siklus homing Anda berperilaku, ada lebih banyak pengaturan Grbl di halaman yang menjelaskan apa yang mereka lakukan (dan juga opsi waktu kompilasi.)
Juga, satu hal lagi yang perlu diperhatikan, ketika homing diaktifkan. Grbl akan mengunci semua perintah kode-G sampai Anda melakukan siklus homing. Artinya tidak ada gerakan sumbu, kecuali kunci dinonaktifkan ($X) tetapi lebih lanjut tentang itu nanti. Sebagian besar, jika tidak semua pengontrol CNC, melakukan hal serupa, karena sebagian besar merupakan fitur keamanan untuk mencegah pengguna membuat kesalahan pemosisian, yang sangat mudah dilakukan dan sedih ketika kesalahan merusak bagian.Jika Anda merasa ini mengganggu atau menemukan bug aneh, beri tahu kami dan kami akan mencoba memperbaikinya sehingga semua orang senang. :)
CATATAN: Lihat config.h untuk opsi homing lainnya untuk pengguna tingkat lanjut. Anda dapat menonaktifkan penguncian homing saat startup, mengonfigurasi sumbu mana yang bergerak lebih dulu selama siklus homing dan dalam urutan apa, dan banyak lagi.
$23 - Homing dir invert mask, int:binary
Secara default, Grbl mengasumsikan sakelar batas homing Anda berada dalam arah positif, pertama-tama gerakkan sumbu z positif, kemudian sumbu xy positif sebelum mencoba menemukan mesin nol secara tepat dengan maju mundur perlahan di sekitar sakelar. Jika mesin Anda memiliki sakelar batas ke arah negatif, topeng arah homing dapat membalikkan arah sumbu.Ini bekerja seperti invert port langkah dan masker pembalikan port arah, di mana yang harus Anda lakukan adalah mengirim nilai dalam tabel untuk menunjukkan sumbu apa yang ingin Anda balikkan dan cari di arah yang berlawanan.
$24 - Umpan rumah, mm/mnt
Siklus homing pertama-tama mencari sakelar batas pada tingkat pencarian yang lebih tinggi, dan setelah menemukannya, ia bergerak dengan laju umpan yang lebih lambat ke rumah ke lokasi yang tepat dari mesin nol. Laju umpan homing adalah laju umpan yang lebih lambat. Setel ini ke nilai kecepatan apa pun yang memberikan lokasi nol alat berat yang dapat diulang dan presisi.
$25 - Pencarian rumah, mm/mnt
Tingkat pencarian homing adalah tingkat pencarian siklus homing, atau tingkat di mana ia pertama kali mencoba menemukan sakelar batas. Sesuaikan dengan kecepatan apa pun yang mencapai sakelar batas dalam waktu yang cukup singkat tanpa menabrak sakelar batas Anda jika masuk terlalu cepat.
$26 - Debounce homing, ms
Setiap kali sakelar dipicu, beberapa di antaranya dapat memiliki kebisingan listrik/mekanik yang sebenarnya 'memantulkan' sinyal tinggi dan rendah selama beberapa milidetik sebelum dipasang. Untuk mengatasi ini, Anda perlu mendebounce sinyal, baik dengan perangkat keras dengan semacam pengkondisi sinyal atau oleh perangkat lunak dengan penundaan singkat untuk membiarkan sinyal selesai memantul.Grbl melakukan penundaan singkat, hanya homing ketika menemukan mesin nol. Tetapkan nilai penundaan ini ke apa pun yang dibutuhkan sakelar Anda untuk mendapatkan homing berulang. Dalam kebanyakan kasus, 5-25 milidetik baik-baik saja.
$27 - Penarikan homing, mm
Untuk bermain bagus dengan fitur batas keras, di mana homing dapat berbagi sakelar batas yang sama, siklus homing akan memindahkan semua sakelar batas dengan perjalanan pull-off ini setelah selesai. Dengan kata lain, ini membantu mencegah pemicuan batas keras yang tidak disengaja setelah siklus homing.
$100, $101 dan $102 – [X,Y,Z] langkah/mm
Grbl perlu tahu seberapa jauh setiap langkah akan membawa alat dalam kenyataan. Untuk menghitung langkah/mm untuk sumbu mesin Anda, Anda perlu mengetahui:
- Mm yang ditempuh per putaran motor stepper Anda.Ini tergantung pada roda gigi penggerak sabuk atau pitch sekrup timah Anda.
- Langkah penuh per putaran stepper Anda (biasanya 200)
- Langkah mikro per langkah pengontrol Anda (biasanya 1, 2, 4, 8, atau 16). Tip: Menggunakan nilai microstep yang tinggi (misalnya, 16) dapat mengurangi torsi motor stepper Anda, jadi gunakan yang terendah yang memberi Anda resolusi sumbu yang diinginkan dan sifat pengoperasian yang nyaman.
Langkah/mm kemudian dapat dihitung seperti ini:
steps_per_mm = (steps_per_revolution*microsteps)/mm_per_rev
Hitung nilai ini untuk setiap sumbu dan tulis pengaturan ini ke Grbl.
$110, $111, dan $112 – [X,Y,Z] Tarif maksimum, mm/mnt
Ini menetapkan tingkat maksimum setiap sumbu dapat bergerak. Setiap kali Grbl merencanakan sebuah gerakan, ia akan memeriksa apakah gerakan tersebut menyebabkan salah satu dari masing-masing sumbu ini melebihi kecepatan maksimumnya. Jika demikian, itu akan memperlambat gerakan untuk memastikan tidak ada sumbu yang melebihi batas kecepatan maksimumnya. Ini berarti bahwa setiap sumbu memiliki kecepatan independennya sendiri, yang sangat berguna untuk membatasi sumbu Z yang biasanya lebih lambat.
Cara paling sederhana untuk menentukan nilai-nilai ini adalah dengan menguji setiap sumbu satu per satu dengan perlahan-lahan meningkatkan pengaturan kecepatan maksimum dan memindahkannya. Misalnya, untuk menguji sumbu X, kirim Grbl sesuatu seperti
G0 X50
dengan jarak tempuh yang cukup sehingga sumbu berakselerasi ke kecepatan maksimalnya. Anda akan tahu bahwa Anda telah mencapai ambang batas kecepatan maksimum saat stepper Anda terhenti. Ini akan membuat sedikit kebisingan, tetapi seharusnya tidak menyakiti motor Anda. Masukkan pengaturan 10-20% di bawah nilai ini, sehingga Anda dapat memperhitungkan keausan, gesekan, dan massa benda kerja/alat Anda. Kemudian, ulangi untuk sumbu Anda yang lain.CATATAN: Pengaturan kecepatan maksimum ini juga menetapkan tingkat pencarian G0.
$120, $121, $122 – [X,Y,Z] Akselerasi, mm/dtk^2
Ini menetapkan parameter percepatan sumbu dalam mm/detik/detik. Secara sederhana, nilai yang lebih rendah membuat gerakan Grbl menjadi lebih lambat, sementara nilai yang lebih tinggi menghasilkan gerakan yang lebih ketat dan mencapai laju gerak makan yang diinginkan lebih cepat. Sama seperti pengaturan kecepatan maksimum, setiap sumbu memiliki nilai percepatannya sendiri dan tidak tergantung satu sama lain. Ini berarti bahwa gerakan multi-sumbu hanya akan berakselerasi secepat sumbu yang berkontribusi paling rendah.
Sekali lagi, seperti pengaturan kecepatan maksimum, cara paling sederhana untuk menentukan nilai untuk pengaturan ini adalah dengan menguji masing-masing sumbu secara individual dengan nilai yang meningkat perlahan hingga motor berhenti. Kemudian selesaikan pengaturan akselerasi Anda dengan nilai 10-20% di bawah nilai maksimum absolut ini. Ini harus memperhitungkan keausan, gesekan, dan inersia massa. Kami sangat menyarankan Anda menguji coba beberapa program kode-G dengan pengaturan baru Anda sebelum menjalankannya. Terkadang pemuatan pada mesin Anda berbeda saat bergerak di semua sumbu bersama-sama.
$130, $131, $132 – [X,Y,Z] Perjalanan maks, mm
Ini menetapkan perjalanan maksimum dari ujung ke ujung untuk setiap sumbu dalam mm. Ini hanya berguna jika Anda memiliki batas lunak (dan homing) yang diaktifkan, karena ini hanya digunakan oleh fitur batas lunak Grbl untuk memeriksa apakah Anda telah melampaui batas mesin Anda dengan perintah gerakan.
Perintah '$' Lainnya dari Grbl
$
Perintah lain menyediakan kontrol tambahan untuk pengguna, seperti mencetak umpan balik pada status modal parser kode-G saat ini atau menjalankan siklus homing. Bagian ini menjelaskan apa itu perintah dan bagaimana menggunakannya.$#
- Lihat parameter gcode
Parameter kode-G menyimpan nilai offset koordinat untuk koordinat kerja G54-G59, posisi yang ditentukan sebelumnya G28/G30, offset koordinat G92, offset panjang pahat, dan probing (tidak secara resmi, tetapi kami tetap menambahkan di sini). Sebagian besar parameter ini langsung ditulis ke EEPROM kapan saja mereka diubah dan bersifat persisten. Artinya mereka akan tetap sama, terlepas dari power-down, sampai mereka diubah secara eksplisit. Parameter non-persisten, yang tidak akan dipertahankan saat reset atau siklus daya, adalah G92, offset panjang pahat G43.1, dan data probing G38.2.
Koordinat kerja G54-G59 dapat diubah melaluiperintah
G10 L2 Px
or yang G10 L20 Px
ditentukan oleh standar gcode NIST dan standar EMC2 (linuxcnc.org). Posisi yang telah ditentukan G28/G30 dapat diubah masing-masing melaluiG28.1
dan G30.1
perintah.Saat
$#
dipanggil, Grbl akan merespon dengan offset yang tersimpan dari koordinat mesin untuk setiap sistem sebagai berikut. TLO
menunjukkan offset panjang pahat, dan PRB
menunjukkan koordinat siklus probing terakhir.$G
- Lihat status parser gcode
Perintah ini mencetak semua mode gcode aktif di parser G-code Grbl. Saat mengirim perintah ini ke Grbl, itu akan membalas dengan sesuatu seperti:
Mode aktif ini menentukan bagaimana blok atau perintah kode-G berikutnya akan diinterpretasikan oleh pengurai kode-G Grbl. Bagi mereka yang baru mengenal G-code dan permesinan CNC, mode menyetel parser ke status tertentu sehingga Anda tidak harus terus-menerus memberi tahu parser cara menguraikannya. Mode-mode ini diatur ke dalam set yang disebut 'kelompok modal' yang tidak dapat aktif secara logis pada saat yang bersamaan. Misalnya, grup modal unit menetapkan apakah program kode-G Anda ditafsirkan dalam inci atau dalam milimeter.
Daftar singkat grup modal, yang didukung oleh Grbl, ditunjukkan di bawah ini, tetapi deskripsi yang lebih lengkap dan terperinci dapat ditemukan di situs web LinuxCNC. Perintah G-code dalam huruf tebalmenunjukkan mode default saat menyalakan Grbl atau mengatur ulang.
Arti Grup Modal Modal | Kata Anggota |
---|---|
Modus Gerak | G0 , G1, G2, G3, G38.2, G38.3, G38.4, G38.5, G80 |
Sistem Koordinat Pilih | G54 , G55, G56, G57, G58, G59 |
Pilihan Pesawat | G17 , G18, G19 |
Modus Jarak | G90 , G91 |
Mode Jarak Arc IJK | G91.1 |
Mode Tingkat Umpan | G93, G94 |
Modus Satuan | G20, G21 |
Kompensasi Radius Pemotong | G40 |
Offset Panjang Alat | G43.1, G49 |
Modus Program | M0 , M1, M2, M30 |
Keadaan Spindel | M3, M4, M5 |
Keadaan Pendingin | M7, M8, M9 |
Selain mode parser kode-G, Grbl akan melaporkan
T
nomor pahat aktif , S
kecepatan spindel, dan F
laju umpan, yang semuanya default ke 0 setelah reset. Bagi mereka yang penasaran, ini tidak cukup cocok dengan grup modal yang bagus, tetapi sama pentingnya untuk menentukan status parser.$I
- Lihat info pembuatan
Ini mencetak umpan balik kepada pengguna versi Grbl dan tanggal pembuatan kode sumber. Opsional,
$I
juga dapat menyimpan string pendek untuk membantu mengidentifikasi mesin CNC yang Anda berkomunikasi dengan, jika Anda memiliki lebih dari mesin yang menggunakan Grbl. Untuk menyetel string ini, kirim Grbl $I=xxx
, di mana xxx
string kustomisasi Anda yang kurang dari 80 karakter. Lain kali Anda meminta Grbl dengan $I
info build tampilan, Grbl akan mencetak string ini setelah versi dan tanggal build.$N - Lihat blok startup
$Nx
adalah blok startup yang dijalankan Grbl setiap kali Anda menyalakan Grbl atau mereset Grbl. Dengan kata lain, blok startup adalah baris kode-G yang dapat Anda jalankan secara otomatis Grbl secara ajaib untuk mengatur default modal kode-G Anda, atau apa pun yang Anda perlukan untuk dilakukan Grbl setiap kali Anda menyalakan mesin Anda. Grbl dapat menyimpan dua blok kode-G sebagai default sistem.Jadi, ketika terhubung ke Grbl, ketik
$N
lalu enter. Grbl harus merespons dengan sesuatu yang singkat seperti:Tidak banyak yang harus dilakukan, tetapi ini hanya berarti bahwa tidak ada blok kode-G yang disimpan dalam antrean
$N0
untuk dijalankan Grbl saat startup.$N1
adalah baris berikutnya yang akan dijalankan.$Nx=line - Simpan blok startup
PENTING: Berhati-hatilah saat menyimpan perintah gerakan (G0/1,G2/3,G28/30) di blok startup. Perintah gerakan ini akan berjalan setiap kali Anda mengatur ulang atau menyalakan Grbl, jadi jika Anda memiliki situasi darurat dan harus e-stop dan reset, gerakan blok startup dapat dan kemungkinan akan memperburuk keadaan dengan cepat. Juga, jangan menempatkan perintah apa pun yang menyimpan data ke EEPROM, seperti G10/G28.1/G30.1. Ini akan menyebabkan Grbl terus menulis ulang data ini pada setiap startup dan reset, yang pada akhirnya akan menghabiskan EEPROM Arduino Anda.
Penggunaan umum untuk blok startup hanya untuk mengatur status modal pilihan Anda, seperti mode G20 inci, selalu default ke sistem koordinat kerja yang berbeda, atau, untuk menyediakan cara bagi pengguna untuk menjalankan beberapa fitur unik yang ditulis pengguna yang mereka butuhkan untuk proyek gila mereka.
Untuk mengatur blok startup, ketik
$N0=
diikuti dengan blok kode G yang valid dan enter. Grbl akan menjalankan blok untuk memeriksa apakah itu valid dan kemudian membalas dengan an ok
atau anerror:
untuk memberi tahu Anda jika berhasil atau ada yang salah. Jika ada kesalahan, Grbl tidak akan menyimpannya.Misalnya, Anda ingin menggunakan blok pengaktifan pertama Anda
$N0
untuk menyetel mode pengurai kode-G seperti koordinat kerja G54, mode G20 inci, bidang G17 XY. Anda akan mengetik $N0=G20 G54 G17
dengan enter dan Anda akan melihat respons 'ok'.Anda kemudian dapat memeriksa apakah itu disimpan dengan mengetik $N
dan Anda sekarang akan melihat respons seperti $N0=G20G54G17
.Setelah Anda memiliki blok startup yang disimpan di EEPROM Grbl, setiap kali Anda memulai atau mengatur ulang, Anda akan melihat blok startup Anda dicetak kembali kepada Anda dan tanggapan dari Grbl untuk menunjukkan apakah itu berjalan dengan baik.Jadi untuk contoh sebelumnya, Anda akan melihat:
Jika Anda memiliki beberapa blok pengaktifan kode-G, blok tersebut akan mencetak kembali kepada Anda secara berurutan pada setiap pengaktifan. Dan jika Anda ingin menghapus salah satu blok startup, (misalnya, blok 0) ketik
$N0=
tanpa apa pun yang mengikuti tanda sama dengan.Juga, jika Anda mengaktifkan homing, blok startup akan segera dieksekusi setelah siklus homing, bukan saat startup.
$C
- Periksa mode kode g
Ini mengaktifkan parser gcode Grbl untuk mengambil semua blok yang masuk dan memprosesnya sepenuhnya, seperti pada operasi normal, tetapi tidak menggerakkan sumbu apa pun, mengabaikan tempat tinggal, dan mematikan spindel dan pendingin. Ini dimaksudkan sebagai cara untuk memberi pengguna cara memeriksa bagaimana program kode-G baru mereka berjalan dengan parser Grbl dan memantau kesalahan apa pun (dan memeriksa pelanggaran batas lunak, jika diaktifkan).
Saat dimatikan, Grbl akan melakukan soft-reset otomatis (^X). Ini untuk dua tujuan. Ini sedikit menyederhanakan manajemen kode. Tapi, itu juga mencegah pengguna memulai pekerjaan ketika mode kode-G mereka tidak seperti yang mereka pikirkan.Penyetelan ulang sistem selalu memberi pengguna awal yang segar dan konsisten.
$X
- Bunuh kunci alarm
Mode alarm Grbl adalah keadaan ketika ada sesuatu yang salah, seperti batas keras atau pembatalan selama siklus, atau jika Grbl tidak mengetahui posisinya. Secara default, jika Anda mengaktifkan homing dan menyalakan Arduino, Grbl memasuki status alarm, karena tidak mengetahui posisinya. Mode alarm akan mengunci semua perintah kode-G sampai siklus homing '$H' telah dilakukan. Atau jika pengguna perlu mengganti kunci alarm untuk memindahkan sumbunya dari sakelar batas, misalnya, kunci alarm mematikan '$X' akan menggantikan kunci dan memungkinkan fungsi kode-G berfungsi kembali.
Tapi, hati-hati melangkah!! Ini hanya boleh digunakan dalam situasi darurat. Posisinya kemungkinan besar telah hilang, dan Grbl mungkin tidak berada di tempat yang Anda pikirkan. Jadi, disarankan untuk menggunakan mode inkremental G91 untuk melakukan gerakan pendek. Kemudian, lakukan siklus homing atau reset segera setelahnya.
$H
- Jalankan siklus homing
Perintah ini adalah satu-satunya cara untuk melakukan siklus homing di Grbl. Beberapa pengontrol gerak lainnya menetapkan perintah kode-G khusus untuk menjalankan siklus homing, tetapi ini tidak benar menurut standar kode-G. Homing adalah perintah yang sepenuhnya terpisah yang ditangani oleh pengontrol.
TIPS: Setelah menjalankan siklus homing, alih-alih jogging secara manual setiap saat ke posisi di tengah volume ruang kerja Anda. Anda dapat mengatur posisi G28 atau G30 yang telah ditentukan sebelumnya menjadi posisi pasca-homing Anda, lebih dekat ke tempat Anda akan melakukan pemesinan. Untuk mengatur ini, Anda harus terlebih dahulu mengarahkan mesin Anda ke tempat yang Anda inginkan untuk memindahkannya setelah homing.Ketik G28.1 (atau G30.1) agar Grbl menyimpan posisi itu. Jadi setelah '$H' homing, Anda bisa memasukkan 'G28' (atau 'G30') dan itu akan pindah ke sana secara otomatis. Secara umum, saya hanya akan memindahkan sumbu XY ke tengah dan membiarkan sumbu Z ke atas. Ini memastikan bahwa tidak ada kemungkinan alat di poros akan mengganggu dan tidak menangkap apa pun.
$RST=$
, $RST=#
, dan $RST=*
- Kembalikan pengaturan dan data Grbl ke default
Perintah-perintah ini tidak tercantum dalam
$
pesan bantuan Grbl utama , tetapi tersedia untuk memungkinkan pengguna memulihkan sebagian atau semua data EEPROM Grbl. Catatan: Grbl akan diatur ulang secara otomatis setelah menjalankan salah satu perintah ini untuk memastikan sistem diinisialisasi dengan benar.$RST=$
: Menghapus dan mengembalikan$$
pengaturan Grbl kembali ke default, yang ditentukan oleh file pengaturan default yang digunakan saat mengkompilasi Grbl. Seringkali OEM akan membangun firmware Grbl mereka dengan pengaturan yang direkomendasikan khusus mesin mereka. Ini memberi pengguna dan OEM cara cepat untuk kembali ke awal, jika ada yang tidak beres atau jika pengguna ingin memulai dari awal.$RST=#
: Menghapus dan menihilkan semua offset koordinat kerja G54-G59 dan posisi G28/30 yang disimpan di EEPROM. Ini umumnya nilai yang terlihat pada$#
cetakan parameter. Ini memberikan cara mudah untuk menghapusnya tanpa harus melakukannya secara manual untuk setiap set dengan aG20 L2/20
atauG28.1/30.1
perintah.$RST=*
: Ini menghapus dan memulihkan semua data EEPROM yang digunakan oleh Grbl. Ini termasuk$$
pengaturan,$#
parameter,$N
baris startup, dan$I
membangun info string. Perhatikan bahwa ini tidak menghapus seluruh EEPROM, hanya area data yang digunakan Grbl. Untuk melakukan penghapusan total, silakan gunakan proyek contoh jelas EEPROM Arduino IDE.
Perintah Waktu Nyata: ~, !, ?, and Ctrl-X
Empat perintah Grbl terakhir adalah perintah waktu nyata. Ini berarti bahwa mereka dapat dikirim kapan saja, di mana saja, dan Grbl akan segera merespons, apa pun yang dilakukannya. Bagi mereka yang penasaran, ini adalah karakter khusus yang 'diambil' dari aliran serial yang masuk dan akan memberi tahu Grbl untuk mengeksekusinya, biasanya dalam beberapa milidetik.
~
- Siklus mulai
Ini adalah perintah siklus mulai atau lanjutkan yang dapat dikeluarkan kapan saja, karena merupakan perintah waktu nyata. Ketika Grbl memiliki gerakan yang antri di buffernya dan siap untuk digunakan, perintah
~
siklus mulai akan mulai mengeksekusi buffer dan Grbl akan mulai menggerakkan sumbu. Namun, secara default, mulai siklus otomatis diaktifkan, sehingga pengguna baru tidak memerlukan perintah ini kecuali jika penangguhan umpan dilakukan. Ketika feed hold dijalankan, siklus start akan melanjutkan program. Cycle start hanya akan efektif bila ada gerakan di buffer yang siap digunakan dan tidak akan bekerja dengan proses lain seperti homing.!
- Penahanan umpan
Perintah feed hold akan menghentikan siklus aktif melalui deselerasi terkontrol, agar tidak kehilangan posisi. Ini juga real-time dan dapat diaktifkan kapan saja. Setelah selesai atau dijeda, Grbl akan menunggu hingga perintah mulai siklus dikeluarkan untuk melanjutkan program. Penahanan umpan hanya dapat menjeda siklus dan tidak akan memengaruhi homing atau proses lainnya.
Jika Anda perlu menghentikan siklus di tengah program dan tidak mampu kehilangan posisi, lakukan penahanan umpan agar Grbl menghentikan semuanya.Setelah selesai, Anda dapat mengeluarkan reset. Selalu coba lakukan penahanan umpan setiap kali mesin berjalan sebelum menekan reset, kecuali tentu saja jika ada situasi darurat.
?
- Status terkini
The
?
perintah segera mengembalikan keadaan aktif Grbl dan real-time posisi saat ini, baik dalam koordinat mesin dan koordinat kerja. Secara opsional, Anda juga dapat meminta Grbl merespons kembali dengan buffer serial RX dan penggunaan buffer perencana melalui pengaturan topeng laporan status. The ?
Perintah dapat dikirimkan setiap saat dan bekerja asynchronously dengan semua proses lain yang Grbl lakukan. The $13
Pengaturan Grbl menentukan apakah laporan milimeter atau inci. Saat ?
ditekan, Grbl akan langsung membalas dengan seperti berikut:Status aktif Grbl adalah: Idle, Run, Hold, Door, Home, Alarm, Check
- Idle : Semua sistem berjalan, tidak ada gerakan yang antri, dan siap untuk apa pun.
- Run : Menunjukkan siklus sedang berjalan.
- Tahan : Penahanan umpan sedang dalam proses dijalankan, atau melambat hingga berhenti. Setelah penahanan selesai, Grbl akan tetap di Tahan dan menunggu siklus dimulai untuk melanjutkan program.
- Door : (Baru di v0.9i) Opsi kompilasi ini menyebabkan Grbl menahan feed, mematikan spindel dan cairan pendingin, dan menunggu hingga sakelar pintu ditutup dan pengguna mengeluarkan siklus start. Berguna untuk OEM yang membutuhkan pintu pengaman.
- Home : Di tengah siklus homing. CATATAN: Posisi tidak diperbarui secara langsung selama siklus homing, tetapi akan disetel ke posisi awal setelah selesai.
- Alarm : Ini menunjukkan ada yang tidak beres atau Grbl tidak tahu posisinya. Status ini mengunci semua perintah kode-G, tetapi memungkinkan Anda untuk berinteraksi dengan pengaturan Grbl jika perlu.Kunci alarm mematikan '$X' melepaskan status ini dan menempatkan Grbl dalam status Idle, yang akan memungkinkan Anda memindahkan barang lagi.Seperti yang dikatakan sebelumnya, berhati-hatilah dengan apa yang Anda lakukan setelah alarm berbunyi.
- Periksa : Grbl dalam mode centang G-code. Ini akan memproses dan menanggapi semua perintah kode-G, tetapi tidak menggerakkan atau menghidupkan apa pun. Setelah dimatikan dengan perintah '$C' lainnya, Grbl akan mengatur ulang sendiri.
Ctrl-x
- Setel ulang grbl
Ini adalah perintah soft reset Grbl . Ini real-time dan dapat dikirim kapan saja. Seperti namanya, ini mengatur ulang Grbl, tetapi dengan cara yang terkontrol, mempertahankan posisi mesin Anda, dan semua dilakukan tanpa mematikan Arduino Anda. Satu-satunya saat soft-reset bisa kehilangan posisi adalah ketika masalah muncul dan stepper terbunuh saat mereka bergerak. Jika demikian, itu akan melaporkan jika pelacakan Grbl dari posisi mesin telah hilang. Ini karena deselerasi yang tidak terkendali dapat menyebabkan langkah yang hilang, dan Grbl tidak memiliki umpan balik tentang berapa banyak yang hilang (ini adalah masalah dengan stepper pada umumnya). Jika tidak, Grbl hanya akan menginisialisasi ulang, menjalankan baris startup, dan melanjutkan perjalanannya yang menyenangkan.
Harap dicatat bahwa disarankan untuk melakukan soft-reset sebelum memulai pekerjaan. Ini menjamin bahwa tidak ada mode kode-G yang aktif dari bermain-main atau mengatur mesin Anda sebelum menjalankan pekerjaan. Jadi, mesin Anda akan selalu mulai segar dan konsisten, dan mesin Anda melakukan apa yang Anda harapkan.
grbl v0.6.Motor servo membutuhkan sinyal modulasi lebar pulsa (PWM) untuk beroperasi. Sayangnya GRBL telah mengalokasikan tugas lain untuk masing-masing pin PWM ... kita perlu meminjam salah satu pin ini untuk mengontrol servo kita.Pin 11 adalah kandidat yang ideal karena fungsi "Limit Z-Axis" tidak diperlukan saat merencanakan ... tetapi untuk mengakses pin ini kita harus mengganti modul kode "spindle_control.c" dalam GRBL dengan kode kita sendiri.Ini memecahkan satu masalah tetapi menciptakan masalah lain ... kode-G apa pun yang kami kirim ke plotter sekarang memerlukan urutan kode "khusus" untuk menaikkan dan menurunkan pena.Menghasilkan Urutan KodeAda dua cara yang sangat berbeda untuk melakukan ini:- tambahkan "ekstensi" ke Inkscape. [1]
- masukkan urutan kode M3,M5 yang diperlukan ke dalam kode-G yang ada menggunakan post-processor.
Hasil akhir dari kedua pendekatan adalah sama.Contoh pasca-pemrosesan menggunakan "GcodePostProcessor" saya ditunjukkan pada foto 1. File sebelah kiri berisi g-code Inkscape asli. File sebelah kanan berisi urutan perintah GRBL tambahan.Baris yang telah dihapus ditunjukkan dengan tanda "minus" merah dan sorot merah. Garis yang telah ditambahkan ditunjukkan dengan tanda "plus" hijau dan sorot hijau.Mari kita mulai...[1]Video yang menunjukkan proses ini dapat ditemukan di https://www.youtube.com/watch?v=k1vzT-T8LJA dan didokumentasikan sepenuhnya di bagian komentar di bawah video.Kelemahan dari pendekatan ini adalah bahwa ekstensi mungkin menjadi usang. Misalnya "MI Inkscape Extension" yang digunakan dalam video di atas hanya berfungsi dengan Inkscape 0.47.[2]Sebuah pasca-prosesor menawarkan keuntungan sebagai berikut:- file kode-G yang ada tidak harus dibuat ulang.
- ia bekerja dengan generator perangkat lunak kode-G apa pun.
- itu kompatibel dengan versi terbaru dari Inkscape
Kamis, 29 April 2021
seting jam ver1.0
cara seting jam masjid versi 1.0
ada 3 tombol
1.atas
2.tengah
3.bawah
*seting jadwal sholat
untul seting jadwal sholat pertama lihat ditampilan yang tidak pas jadwalnya
apa perlu ditambah apa dikurangi
misalnya subuh aturan jam 04:39 tapi ditampilan jam 04:33 maka perlu ditambah 6 6 poin
1.tekann dan tahan tombol atas sampai bunyi teet
2.cari subuh dengan tombol tengah
3.tam bahkan nilai subuh 6 poin.tombol atas untuk menambah nilai tambah poin
4.tom bol bawah untuk mengurangi nilai poin
5.untuk keluar tekan tombol tengah berulwng sampai tampilan utama
*untuk merubah jam tanggal dan tahun
1.tekann dan tahan tombol tengah sampai bunyi teet
2.tekan atas untuk menambah
3.tekan bawah untuk mengurangi
4.tekan tengah untuk memilih tanggal jam atau tahun
5.untuk keluar tekan tombol tengah sampai menu utama
*merubah lamanya waktu antara dzan dan iqomah
1.tekan dan tahan tombol bawah sampai bunyi teet
2.pilih jadwal mana yang akan dirubah dengan tombol tengah
3 atas untuk menambah nilai poin bawah untuk mengurangi nilai poin
4.tekan tengah berulang kali untuk keluar sampai tampilan utama
Langganan:
Postingan (Atom)