Kloter pelatihan kali ini berlangsung saat kondisi pandemi agak sedikit reda, sehingga dimungkinkan untuk dilaksanakan secara tatap muka. Pesertanya exclusive dari PT. Urip Gumulya, Semarang.
Pelatihan berlangsung selama 3 hari, 27 – 29 Juli 2020.

Jul 29
Kloter pelatihan kali ini berlangsung saat kondisi pandemi agak sedikit reda, sehingga dimungkinkan untuk dilaksanakan secara tatap muka. Pesertanya exclusive dari PT. Urip Gumulya, Semarang.
Pelatihan berlangsung selama 3 hari, 27 – 29 Juli 2020.
May 21
Dulu, kita mengenal istilah CPU – Central Processing Unit. Kemudian lahir GPU, ketika aplikasi gaming membutuh ekstra steroid. Hari ini, di era AI, GPU yang kemarin-kemarin digunakan untuk memompa kinerja training dan inferensi, mulai “bermutasi”. Bila merujuk pada platform NVIDIA, ada CUDA cores, Tensor cores dan RT cores. Dalam satu kemasan namun masing-masing memiliki tugas yang berbeda. Menarik!
Di ranah yang lebih kecil, smartphone, beberapa pabrikan chip memperkenalkan istilah NPU – Neural Processing Unit, agar fitur “AI” yang disematkan, bisa berjalan dengan mulus.
Pergerakan ke arah computing intensive kelihatannya tidak bisa ditahan. Aplikasi Internet of Things dan Robotik hari ini, pun sama, memerlukan dukungan komputasi yang prima. Semua mengalami shifting.
November 2019, saya berkesempatan memberikan workshop 2 hari, dalam rangka pembekalan, kepada mahasiswa/i Program Pascasarjana Politeknik Elektronika Negeri Surabaya. Di saat sela, berbincang dengan satu mahasiswa yang tahun lalu mewakili Indo bertempur di ajang robotik internasional di Aussie. Dia bercerita, bagaimana robot tim Perancis sangat mulus meng-eksekusi object detection, menggunakan kecerdasan buatan sederhana.
Edge computing pun terus bergulir. Sebelum masa pandemi, sempat mencicipi satu steroid yang ditanam di Raspberry Pi, yakni Coral. Dengan Raspberry Pi 3, kemampuan frame per second naik signifikan, dari 0.5 fps menjadi 25 fps. Sebuah peningkatan kinerja yang luar biasa!
Ke depan, kita akan melihat dan mengalami perubahan-perubahan yang tidak pernah kita saksikan dalam 10 tahun terakhir.
Kami, Padepokan NEXT SYSTEM Bandung, terus bergiat untuk menyediakan program pelatihan yang bersifat breakthrough dan lompatan, baik di ranah Mikrokontroler / Otomasi, Robotika, Internet of Things, juga Machine Learning / Deep Learning / Artificial Intelligence.

Jensen Huang, CEO Nvidia, bersama dengan “GPU Ampere”, sebelum di-release secara resmi, 14 Mei 2020 lalu.
21 Mei 2020
Apr 18
Ada banyak algoritma Machine Learning yang bisa diterapkan dalam distribusi data. K Nearest Neigbors (KNN), Support Vector Machine (SVM) dan Naive Bayes adalah tiga diantaranya.
K Nearest Neighbors (KNN) adalah yang sangat sederhana, mudah dimengerti, serbaguna dan salah satu algoritma pembelajaran mesin teratas.

KNN digunakan dalam berbagai aplikasi seperti keuangan, kesehatan, ilmu politik, deteksi tulisan tangan, pengenalan gambar dan pengenalan video. Dalam peringkat Kredit, lembaga keuangan akan memprediksi peringkat kredit pelanggan. Dalam penyaluran pinjaman, lembaga perbankan akan memprediksi apakah pinjaman itu aman atau berisiko. Dalam ilmu politik, mengklasifikasikan calon pemilih dalam dua kelas akan memilih atau tidak akan memilih.
Algoritma KNN digunakan untuk masalah klasifikasi dan regresi. Algoritma KNN berdasarkan pendekatan fitur kesamaan.
SVM menawarkan akurasi yang sangat tinggi dibandingkan dengan pengklasifikasi lain seperti regresi logistik, dan pohon keputusan. Ia dikenal karena trik kernelnya untuk menangani ruang input nonlinier. Ini digunakan dalam berbagai aplikasi seperti deteksi wajah, deteksi intrusi, klasifikasi email, artikel berita dan halaman web, klasifikasi gen, dan pengenalan tulisan tangan.

SVM adalah algoritma yang menarik dan konsepnya relatif sederhana. Pengklasifikasi memisahkan titik data menggunakan hyperplane dengan jumlah margin terbesar. Itu sebabnya classifier SVM juga dikenal sebagai classifier diskriminatif. SVM menemukan hyperplane optimal yang membantu dalam mengklasifikasikan poin data baru.
Misalkan Anda adalah seorang manajer produk, Anda ingin mengklasifikasikan ulasan pelanggan dalam kelas positif dan negatif. Atau Sebagai manajer pinjaman, Anda ingin mengidentifikasi pemohon pinjaman mana yang aman atau berisiko? Sebagai analis layanan kesehatan, Anda ingin memprediksi pasien mana yang dapat menderita penyakit diabetes. Semua contoh memiliki jenis masalah yang sama untuk mengklasifikasikan ulasan, pemohon pinjaman, dan pasien.

Naive Bayes adalah algoritma klasifikasi paling mudah dan cepat, yang cocok untuk sebagian besar data. Klasifikasi Naive Bayes berhasil digunakan dalam berbagai aplikasi seperti penyaringan spam, klasifikasi teks, analisis sentimen, dan sistem pemberi rekomendasi. Ia menggunakan teorema Bayes probabilitas untuk prediksi kelas yang tidak diketahui.
…
Untuk informasi lebih lanjut mengenai kelas pelatihan Computer Vision, Machine Learning dan Deep Learning, silahkan menghubungi kontak tertera.
Apr 17
Satu peserta dari PT. Hino Motors Manufacturing Indonesia, Purwakarta, hadir di Padepokan NEXT SYSTEM Bandung, untuk mengikuti pertapaan Mikrokontroler PIC, 14 – 16 April 2020.

Terima kasih untuk kepercayaan yang diberikan
Feb 25
Kemampuan suatu platform tidak pernah bisa kita ukur bila kita tidak mencobanya. Sama halnya dengan mikrokontroler. Kelahiran Arduino adalah sebuah terobosan, namun bukan berarti mikrokontroler adalah arduino. Kita perlu mencicipi rasa dari platform lain, mencobanya, mengukurnya, sehingga bisa mendorong lahirnya ide dan kreasi baru.
Satu yang menarik, di Padepokan NEXT SYSTEM Bandung ada satu program pembelajaran baru, yang diberi nama Wisata Kuliner Mikrokontroler. Menggunakan kata kuliner, supaya tidak asing, dan menempatkan mikrokontroler pada posisi yang friendly, bisa dicicipi. Yuk, kita lihat beberapa diantaranya.

Varian mikrokontroler yang satu ini, produk dari Infineon, Jerman, seri XMC4500. Cukup gahar, karena mampu dipacu sampai 120 MHz dan memiliki inti Cortex-M4. Bermain mikrokontroler yang satu ini cukup menarik, walaupun di market Indo, harus mencarinya dengan sabar.
Pertama kali ngoprek mikrokontroler yang satu ini, ketika diundang oleh satu kampus untuk menjadi nara sumber, sementara topik sudah mereka tentukan, yakni bicara soal Mikrokontroler Infineon. Seru, karena dalam waktu yang cukup singkat, harus mencari barangnya, belajar programming secara cepat, dan menyajikannya di ruang seminar. Sangat seru, kejar tayang seperti dikejar anjing galak ?
Harus diakui, chip yang satu ini memang bisa diajak bekerja keras. Di satu industri, ketika arduino sudah “babak belur” dan “pendarahan” hebat, Infineon XMC4500 bisa mengambil alih tugas dengan sangat cantik. Harus diakui, memang beda kelas.
Yuk, kulineran mikrokontroler, arduino saja tidak cukup.

Terobosan yg dilakukan tim arduino, harus diakui, membuat perubahan mindset. Kita sebagai developer, tentu tidak boleh terkunci pada satu varian produk. Board Arduino sendiri menggunakan chip dari Atmel AVR, namun tidak semua chip keluarga Atmel AVR bisa diprogram dgn cara Arduino.
Kedua, pabrikan mikrokontroler bukan cuma Atmel. Ada puluhan pabrikan, bahkan lebih, yang menghasilkan chip mikrokontroler dgn beragam kapasitas, fasilitas dan kecepatan. Untuk itu, perlu masuk ke perairan yg lebih dalam, mencicipi beragam jenis mikrokontroler yg ada di market.
Saya coba post, satu breakout dari Microchip, menggunakan seri PIC16F18446. Bisa minta sample ke vendor, for free. Cuma pengirimannya lumayan lama. Pemrogramannya sendiri menggunakan C/C++, cukup sederhana.
Yuk, kulineran mikrokontroler, arduino saja tidak cukup.
Jan 15
Kali ini, sobat dan sahabat dari Situ Gunung Sukabumi dan Glamping Lakeside Rancabali Ciwidey, mampir dan bergabung dalam pertapaan bertajuk Raspberry Pi: Sistem Otomasi dan Informasi, di Padepokan NEXT SYSTEM Bandung. Dalam pertapaan ini, peserta mempelajari esensi dari hardware Raspberry Pi, manajemen database, jaringan dan komunikasi data paket, otomasi, serta membangun HMI – Human Machine Interface.

#raspberrypi #situgunung #glampinglakeside #nextsystem
Jan 10
Setelah hampir 3 tahun memberikan pelatihan terkait Machine Learning dan Deep Learning, serta membimbing skripsi mahasiswa dengan topik terkait; saya mencoba mengutip sebuah penjelasan singkat yang ada di NVIDIA Blog. Penjelasan lebih komprehensif tentunya akan lebih mudah dan menarik, karena disertai contoh secara live, biasanya saya sampaikan di ruang pelatihan atau seminar atau kuliah umum
Artificial Intelligence (AI) atau Kecerdasan Buatan adalah masa depan. Kecerdasan buatan adalah fiksi ilmiah. Kecerdasan buatan sudah menjadi bagian dari kehidupan kita sehari-hari. Semua pernyataan itu benar, hanya tergantung pada rasa AI apa yang kita maksud.
Sebagai contoh, ketika program Google DeepMind AlphaGo mengalahkan Master Korea Selatan Lee Se-dol di game board Go awal tahun 2016, istilah AI, machine learning dan deep learning, digunakan di media untuk menggambarkan bagaimana DeepMind menang. Dan ketiganya adalah bagian dari alasan mengapa AlphaGo bisa mengalahkan Lee Se-Dol. Namun, ketiganya tidak sama.
Cara termudah untuk membayangkan hubungan mereka adalah, dengan mem-visualisasikan mereka sebagai lingkaran konsentris dengan AI – ide yang datang pertama – terbesar, kemudian machine learning – yang berkembang kemudian, dan akhirnya deep learning – yang mendorong ledakan AI hari ini – tepat di dalam keduanya .
![]()
Berkat Deep Learning, AI Memiliki Masa Depan yang Cerah
Deep Learning telah memungkinkan banyak aplikasi machine learning praktis, dan dengan perluasan bidang AI secara keseluruhan. Deep Learning memecah tugas dengan cara yang membuat semua jenis alat berat tampak mungkin, bahkan mungkin. Mobil tanpa pengemudi, perawatan kesehatan preventif yang lebih baik, bahkan rekomendasi film yang lebih baik, ada di sini hari ini atau di cloud. AI adalah saat ini dan masa depan. Dengan bantuan Deep learning, AI bahkan dapat mencapai kondisi fiksi ilmiah yang telah lama kita bayangkan.
Bersambung …
Di Padepokan NEXT SYSTEM Bandung, ada kelas pelatihan terkait Computer Vision, Machine Learning dan Deep Learning, yang diselenggarakan secara intensif, dan terbuka untuk umum.
Jan 02
ESP8266 bekerja pada tegangan 3.3V, jadi seluruh I/O bekerja pada tegangan yang sama. Seluruh pin tidak 5V tolerant, memberikan tegangan lebih dari 3.6V pada pin akan membuat chip “bermasalah”. Arus maksimum yang dapat ditarik dari setiap pin GPIO adalah 12 mA. On board LED terhubung dengan GPIO2 dan GPIO16.
ESP8266 memiliki 17 pin GPIO (0-16) namun hanya 11 pin yang dapat digunakan, karena 6 pin (GPIO6 – GPIO11) terhubung dengan chip flash memory. Jika mencoba menggunakan satu dari pin-pin ini, program akan crash.
Pin GPIO1 (TX0) dan GPIO3 (RX0) digunakan untuk komunikasi secara serial dengan komputer melalui USB.
Modul ESP memeriksa pin GPIO0, GPIO2 dan GPIO15 setiap kali boot, berdasarkan mode-mode berikut:

Silahkan mempelajari catatan terkait dengan boot messsage dan mode boot yang terdapat pada link berikut.
Catatan: kita tidak perlu menambahkan pull-up eksternal pada GPIO2 karena pull-up internal di-enable saat boot.
ESP8266 dapat mengalami gagal boot jika beberapa pin pulled LOW atau HIGH:
Pengertian pin HIGH saat BOOT di atas adalah, pin mengeluarkan sinyal 3.3V ketika ESP8266 boot. Hal ini akan menjadi masalah ketika ada sejumlah periferal active HIGH yang terhubung dengan GPIO-GPIO tersebut. GPIO lainnya, kecuali GPIO5 dan GPIO4, memiliki output LOW saat boot, yang akan menjadi masalah jika terhubung dengan periferal active LOW. Anda dapat membaca artikel ini yang meng-investigasi kondisi dan perilaku setiap GPIO pada saat boot.
GPIO4 (D2) dan GPIO5 (D1) adalah GPIO paling aman jika kita ingin mengoperasikan relay. Kedua pin tersebut sering digunakan untuk komunikasi I2C (Pin SCL dan SDA). Pin lainnya, GPIO14 (D5), GPIO12 (D6) dan GPIO13 (D7). Ketiganya juga aman untuk operasi input dan output. Ketiganya terhubung ke jalur SPI (Pin SCLK, MISO dan MOSI). Ketika menggunakan periferal SPI, pin CS dapat menggunakan GPIO15 (D8), namun perlu hati-hati karena proses boot akan gagal jika pin ini pulled HIGH.
Jadi, dengan memahami karakter dari pin GPIO yang ada, maka kita dapat merangkai dengan aman, terhindar dari hal-hal yang tidak diharapkan. Untuk opsi yang lebih leluasa, bisa mempertimbangkan ESP32, karena memiliki GPIO yang lebih banyak.
Pinout NodeMCU memiliki label D0 – D8, RX serta TX. Namun ketika memrogramnya menggunakan Arduino IDE, label yang tertera tidak sesuai dengan nomor GPIO.

NodeMCU memiliki pemetaan pin yang sedikit aneh. Nomor pin yang tertera pada board tidak sesuai dengan nomor GPIO ESP8266. Berikut adalah konstanta yang kami definisikan untuk memudahkan penggunaan:
#define PIN_WIRE_SDA (4)
#define PIN_WIRE_SCL (5)
static const uint8_t SDA = PIN_WIRE_SDA;
static const uint8_t SCL = PIN_WIRE_SCL;
static const uint8_t LED_BUILTIN = 16;
static const uint8_t BUILTIN_LED = 16;
static const uint8_t D0 = 16;
static const uint8_t D1 = 5;
static const uint8_t D2 = 4;
static const uint8_t D3 = 0;
static const uint8_t D4 = 2;
static const uint8_t D5 = 14;
static const uint8_t D6 = 12;
static const uint8_t D7 = 13;
static const uint8_t D8 = 15;
static const uint8_t D9 = 3;
static const uint8_t D10 = 1;
Diagram rangkaian dari NodeMCU memberikan informasi yang lebih jelas terkait hubungan antara NodeMCU dengan GPIO ESP8266. Jangan pernah menggunakan GPIO0 (D3) sebagai pin input, pin ini adalah flash button. Jika memiliki kondisi LOW pada saat power ON, akan menempatkan ESP dalam programming mode.
Pin VU adalah pin USB 5V, hanya bekerja ketika NodeMCU dicatu melalui port micro USB. Pin VIN adalah pin untuk mencatu NodeMCU menggunakan catu daya eksternal (7V – 12V).
Untuk meng-enable PWM pada pin tertentu, gunakan analogWrite(pin, value); di mana pin adalah digital pin, dan value adalah angka antara 0 – 1023. Untuk mengubah bit depth dari output PWM, gunakan analogWriteRange(newRange); Frekuensi PWM dapat diubah menggunakan analogWriteFreq(newFreq); newFreq antara 100 – 1000 Hz.
Untuk input analog, hanya terdapat satu kanal pada pin A0, 0 = 0V, 1023 = 1V). ESP dapat menggunakan ADC-nya untuk mengukur tegangan catu. Untuk melakukan hal ini, sertakan ADC_MODE(ADC_VCC); pada bagian atas dari sketch, dan gunakan ESP.getVcc(); untuk mendapatkannya. Jika menggunakannya untuk membaca tegangan catu, pin analog tidak dapat dihubungkan dengan divais.
Untuk menggunakan UART0 (TX=GPIO1, RX=GPIO3) dapat menggunakan obyek Serial seperti pada Arduino: Serial.begin(baud); Untuk menggunakan pin alternatif (TX=GPIO15, RX=GPIO13) gunakan Serial.swap(); setelah Serial.begin(); Untuk menggunakan UART1 (TX=GPIO2) gunakan obyek Serial1.
Satu yang harus diingat adalah ketika menulis program untuk ESP8266 dimana sketch harus berbagi sumber daya (waktu CPU dan memori) dengan WiFi dan TCP-stacks (software yang berjalan di background dan menangani seluruh fungsi WiFi dan mengelola TCP stack). Jika kode yang kita susun eksekusinya terlalu lama dan “tidak memberi kesempatan” TCP stacks untuk melakukan tugasnya, maka akan terjadi crash dan kita dapat kehilangan data. Yang terbaik adalah menjaga waktu eksekusi dalam loop dalam beberapa ratus milidetik.
Setiap kali main loop diulang, sketch yang kita susun memberi kesempatan kepada WiFi dan TCP untuk menangani semua WiFi dan TCP request. Jika loop lebih lama dari ini (blocking loop), kita harus secara eksplisit memberi waktu CPU kepada WiFi / TCP stack, dengan menyertakan delay(0); atau yield(); Jika tidak, network communication tidak akan bekerja sebagaimana mestinya, dan jika lebih lama dari 3 detik, soft WDT (Watch Dog Timer) akan me-reset ESP. Jika soft WDT di-disable, setelah sedikit lebih dari 8 detik, hardware WDT akan me-reset chip.
pinMode(12, INPUT_PULLUP);
while (digitalRead(12) == HIGH)
yield(); // Do (almost) nothing -- yield to allow ESP8266 background functions
Serial.println("Button is pressed!"); // Print button pressed message.Dari pespektif mikrokontroler, 3 detik adalah waktu yang panjang (240 juta siklus clock). Jadi, selain kita melakukan proses yang ekstrim atau mengirim string yang sangat panjang melalui Serial, kita tidak akan melewati batas ini. Perlu diingat bahwa menambahkan yield(); dalam loop dapat memerlukan waktu lebih dari 100 ms, tergantung situasi saat itu.
void delay(unsigned long ms)
{
uint32_t start = micros();
while (ms > 0) {
yield();
while ( ms > 0 && (micros() - start) >= 1000) {
ms--;
start += 1000;
}
}
}Nov 24
Selama 2 hari, 22 – 23 November 2019, di kampus Politeknik Elektronika Negeri Surabaya (PENS), tepatnya di Gedung Pascasarjana, memimpin pelatihan Raspberry Pi dan Internet of Things, membekali mahasiswa /i Program Pascasarjana dari Program Studi Teknik Elektro dan Program Studi Teknik Informatika dan Komputer.
Matur nuwun Dr. Eng. Agus Indra Gunawan, S.T., M.Sc. (Ketua Program Studi S2 Teknik Elektro) dan Dr. Bayu Sena Dewantara, S.ST., M.T. (Ketua Program Studi S2 Teknik Informatika dan Komputer), yang sudah hadir dan membuka acara ini.

Oct 12
Hari ini, 12 Oktober 2019, diundang SMK Yadika Soreang, untuk sharing terkait dengan teknologi dan perlunya dunia mengantisipasi perkembangannya, dalam rangka persiapan SDM SMK Yadika untuk memasuki dunia robotik.

Dalam pertemuan yang dihadiri oleh stake holder sekolah, sesi paparan berlangsung hampir 2 jam, dilanjutkan dengan tanya jawab.
Hatur nuhun SMK Yadika Soreang!