"Kembali Ke Dasar Elektronika Digital ... "

  • IC Timer 555 yang Multifungsi

    IC timer 555 adalah sirkuit terpadu (chip) yang digunakan dalam berbagai pembangkit timer, pulsa dan aplikasi osilator. Komponen ini digunakan secara luas, berkat kemudahan dalam penggunaan, harga rendah dan stabilitas yang baik

  • Animasi LED Dengan IC 4017

    IC 4017 adalah IC 16-pin CMOS dekade counter dari seri IC CMOS 4000. Sangat berguna jika ingin membuat animasi lampu atau LED secara sederhana seperti led berjalan, tulisan berjalan , counter/timer dan masih banyak kegunaan lainnya

  • Bermain DOT Matrix - LOVEHURT

    Project Sederhana dengan Dot Matrix dan Attiny2313. Bisa menjadi hadiah buat teman atau pacarmu yang ulang tahun dengan tulisan dan animasi yang dapat dibuat sendiri.

  • JAM DIGITAL 6 DIGIT TANPA MICRO FULL CMOS

    Jika anda pencinta IC TTL datau CMOS maka project jam digital ini akan menunjukkan bahwa tidak ada salahnya balik kembali ke dasar elektronika digital , sebab semuanya BISA dibuat dengan teknologi jadul

  • BIKIN PCB SEDERHANA TAPI GA MURAHAN

    Bikin PCB itu ga susah kok..dengan software EAGLE CAD dan teknik sterika kamu dapat membuat PCB untuk berbagai project elektronika mu ...

Senin, 13 Januari 2020

Berkenalan Dengan MakeBlock vs Arduino - Praktek Dasar Led Blink & Sensor LM35



" Mengajarkan ilmu ke anak-anak yg lahir setelah generasi milenial haruslah berbasis VISUAL .." 

Apaan lagi nih bikin pusing aja ? Quote tadi saya kutip dari pembicaraan bersama teman sesama penjaga stand pada pameran ARTPRENEUR pada akhir desember 2019. Kegalauannya pecah ketika melihat kenyataan  siswanya (anak smk) dimana hanya segelintir saja yg bisa menyerap ilmu coding web php yg dan berujung banyak siswa yg bolos. Kenapa sepeti itu ya ? Kenapa coding menjadi tidak menarik ? Padahal penulis sangat mencintai coding (yang gampang tentunya). Saya merasakan masuk kedalam koding sangat mengasyikkan layaknya memecahkan sebuah role play game, mungkin dapat dibandingkan seperti keasikan anak sekarang bermain Mobile Legend. 


Pada dasarnya pemrograman DRAG & DROP bukan barang baru terutama era 90-an dengan  platform pemrograman desktop yaitu Visual Basic, C# dan Delphi dimana membuat tombol dan input teks hanya dari ujung mouse. Apalagi setelah era macromedia / adobe flash malahan semakin dimanja pemrograman nya dengan penggabungan animasi dan actionscript (penulis jagonya di flash sih). Lalu kita tengok pemrograman visual drag-drop lainnya, Scratch menjadi Visual IDE (berbasis flash) pilihan untuk tujuan edukasi koding ke anak-anak yg dikembangkan oleh MIT. Semakin dimanjanya anak-anak dengan gadget dan pilihan aplikasi yg langsung tampil "VISUAL" nya menyebabkan proses koding berbasis teks menjadi kurang menarik lagi. Bagaimana dengan pemrograman microcontroller  yg selama ini selalu dilakukan pada mode teks?


Mudah bukan gambaran program scratch diatas ? Bagaimana dengan pemrograman arduino pada scratch? Sama gampangnya kok...liat nihh...


Mulai tertarik dengan bahasa pemrograman drag and drop diatas ? Jika iya mari saya ajak menyelam membuat Hello Word dengan praktek Led Kedip dan Pembacaan Sensor Suhu LM35. Untuk itu anda perlu menuju ke  IDE online web ( http://ide.mblock.cc ) atau download saja programmer offline nya yg tersedia di websitenya (googling aja).  Perlu diketahui makeblock atau mblock merupakan platform programming robotik dari senzhen china yg demi menarik pasar anak-anak pencinta robotik maka dimanfaatkanlah scratch sebagai programming IDE nya. Tentunya jika ingin lebih menarik minat anak-anak anda harus membeli Mbot atau modul robotik yg memang dibuat semenarik mungkin dan sesuai tujuan mblock. Namun bagi anda yg hanya mempunyai board clone arduino seperti UNO jangan khawatir masih bisa kok. Mau saya bagi langkah-langkahnya berkenalan ? Ikuti tulisan dibawah.




  1. Device & Connection : Untuk arduino UNO butuh melakukan download modul librarinya. Menu awal ketika membuat project baru akan muncul  device Codey dan sprite panda. Hapus saja karena tidak diperlukan.
  2. Component : Berisikan semua block komponen pemrograman yang diperlukan. Penggunaannya sangat simple hanya klik drag dan drop.
  3. Block Canvas : Yaitu tempat menyusun komponen menjadi blok saling berkaitan yang kemudian akan diterjemahkan menjadi suatu software arduino
  4. Code : Tempat kode yang equivalen dengan block pada canvas. Jadi bagi anda yg sudah menguasai sketch arduino akan mudah memahami walau akan ada batasan yg akan dihadapi.



HELLO WORD LED BLINK


PIN 13 sebenarnya sudah memiliki LED internal pada PCB tapi kalau mau lebih terang ya bisa mengikuti gambar diatas. Langkahnya dari awal seperti ini nih..



Jangan lupa ya gambar diatas dimana harus ditambahkan device Arduino UNO pada kolom devices. Pastikan driver USB to Serial ch340 sudah terinstal juga di komputer kamu.




Gambar diatas menunjukkan cara melakukan koneksi ke board arduino uno kamu dan akan muncul gambar dikanan apabila sudah terkoneksi dengan baik. Lanjut yuk kita berkenalan dengan Component beserta proses drag-dropnya ke dalam canvas.


Komponen block events yg mungkin satu-satunya dipakai dalam pemrograman arduino Uno adalah "when Arduino Uno Starts up "



Komponen PIN berisikan blocks yg berhubungan dengan PIN IO baik untuk mengatur fungsinya maupun pembacaan datanya, jadi super lengkap dari PWM sampai ADC. Contoh diatas kita akan menyusun blocks sehingga PIN 13 (LED) merupakan pin OUT dan kemudian kita bisa tentukan statenya apakah HIGH (nyala) atau LOW (mati).


Komponen control berisikan block perintah pengulangan, delay serta conditional statement. Tidak begitu susah kalau hanya buat menyalakan dan mematikan LED tiap 1/2 detik seperti gambar diatas. Tinggal menentukan blocks yg sesuai urutannya dan selanjutnya dapat dievaluasi melalui script yang berada dikanannya. Memang akan terjadi kesalahpahaman mengenai fungsi LOOP yg digantikan oleh perintah WHILE(1) pada fungsi void setup. Tapi secara fungsi itu PODO WAE MUNYER SAMPEK KIAMAT.


Komponen blocks Variables seperti namanya kita akan mendaftarkan sebuah variabel atau list(array) dan kemudian dapat kita tentukan nilai nya melaui block "set" atau perubahannya melalui  block "change". Pada gambar diatas kita buat variabel coba bernilai awal 0, kemudian pada awal setup dirubah menjadi 2 dan melalui LOOP FOREVER akan berubah nilainya bertambah 1 tiap 1 detik.



Komponen operators berisikan operator aritmatika, binary serta operasi string. Tidak jauh berbeda dengan pemrograman teks lainnya yg menjadi spesial adalah drag drop antar blocks yg harus sesuai bulat atau persegi sesuai operasi yang diinginkan. Contoh penggabungan blocks control dengan blocks operators ada pada pembahasan dibawah.



Tujuan dari blocks diatas adalah menghidupkan dan kemudian mematikan LED dengan memperhatikan nilai dari variabel angka. Jadi saat angka <50 maka LED akan menyala lalu saat angka >50 maka LED akan mati. Untuk mengembalikan variabel angka ke 0 maka dibuat satu blocks IF statement lagi yg akan meReset varibel angka menjadi NOL. Sudah siap mencoba di Arduino UNO kamu ? Langsung tancapkan saja dan tekan UPLOAD !



MEMBACA SUHU LM35





Jika berbicara tentang pembacaan sensor LM35 pasti semua paham sangat gampang scriptnya bertebaran dibahas di google..jadi jika dikembangkan melalui scratch Mblocks menjadi satu baris yg sangat indah seperti gambar dibawah ini.


Mau tahu hasilnya seperti bagaimana di terminal serial putty ?



Tentunya MakeBlock memiliki keterbatasan untuk penggunaan arduino uno tapi saya rasa cukup menarik untuk dipelajari. Jika ada uang lebih bisa tuh membeli modul robot mBot yang sangat memungkinkan diajarkan ke anak-anak generasi Z . Semoga tulisan saya dapat mengispirasi kalian untuk tetap semangat belajar.
Share:

Senin, 30 Desember 2019

ARTPRENEUR WEEK 2019 - Ikut meramaikan di akhir tahun 2019

Di penghujung 2019 ini kami diminta oleh sebuah sekolah kejuruan di surabaya untuk mengisi anjungan dengan produk kami pada kegiatan pameran berjudul ARTPRENEUR WEEK 2019 yg diadakan oleh komunitas artpreneur.rek! surabaya. Kegiatan ini berlangsung tanggal 26-29 desember 2019 di Mall Ciputra world surabaya. Di tengah suasana liburan menjadi sebuah tantangan untuk mempersiapkan konten pameran dalam waktu singkat.





SMK ketintang surabaya sejak pertengahan 2019 meminta kami untuk menggali potensi siswa dibidang industri jaman now yg kedepannya akan berevolusi menjadi industri 4.0 dimana otomasi industri akan berhubungan erat dengan istilah baru yaitu Data Mining , Artificial Inteligence, Machine Learning dan Internet Of Things. Awalnya kami aisi555 sedikit galau mewujudkannya ke dalam suatu paket pembelajaran yg dapat dicerna oleh anak SMK yg notabene bukan berbasis teknologi melainkan berbasis Akutansi (awalnya merupakan SMEA). Untuk yang berbau teknologi SMK ketintang hanya memiliki jurusan Teknik Komputer Jaringan serta Multimedia. Apa yg terjadi adalah menjadi tantangan tersendiri selama paruh kedua semester 2019 dan menjadikan pengalaman baru yg sangat menarik tentunya.


Lalu apakah nyambung dengan tema pameran yg bertajuk "ART" + "ENTREPRENEUR" dengan yg saya sampaikan di sekolah? Ya sebaiknya disambung-sambungkan aja biar tidak terlalu mumet di kepala. Karena saya yakin suatu saat Indonesia bisa menyambungkan seni dengan IOT. Coba perhatikan mesin jahit elektronik yg tampil di pameran ini.  


Seni ketrampilan menjahit kini sudah bergeser ke teknologi jaman now dimana bukan hanya mekanik saja. Microcontroller sudah merambah ke dunia jahit-menjahit looo...coba kita lihat video youtube dibawah dimana sebuah mesin jahit sudah sangat maju memanfaatkan teknologi masa kini.



Nah terbukti dunia seni dan iot bisa menjadi satu peluang di masa depan. Tentunya aisi555 sangat berkeinginan untuk mengembangkannya dari sekarang setelah melihat peluang-peluang di pameran ARTPRENEURWEEK 2019. Yang kami tampilkan pada pameran ini merupakan modifikasi dari praktek pembelajaran yang pernah dibahas pada blog yaitu smartphone vs esp8266






Harapan kedepannya aisi555 tidak hanya menjadi penggembira pada pameran tapi dapat memberikan kontribusi untuk kemajuan dunia IOT di Indonesia


Share:

Senin, 25 November 2019

Membantu Sekolah Vokasi Menerjemahkan Dunia Kerja Jaman Now



Tidak terasa 5 tahun sudah terakhir kalinya saya membuka amplop slip gaji  , apalagi terakhir kali  ketika slip gajinya dibuka berisi lembaran uang. Bukan isapan jempol ini kejadian nyata waktu "mampir" bentar di pabrik di daerah berbek selama setahun, pernah merasakan gembiranya menerima slip gaji + lembaran uang biru didalamnya. Perasaan De-Ja-Vu itu muncul lagi tahun 2019 ini ketika saya diminta untuk mengisi kelas  tiap jumat membahas "teknologi jaman now" di sebuah SMK di Surabaya, dan  jika dihitung lembaran uang di amplop slip itu nilainya lebih besar (sedikit) daripada waktu saya bekerja di pabrik 15 tahun yg lalu.



Seharusnya saya sudah menjadi "pengajar" 10 tahun lebih jikalau  dulu menerima sebuah tawaran mengajar di sebuah universitas, tapi entah kenapa hati saya kecil saya waktu itu  berkata kalau ilmu saya akan lebih berguna dibagikan saat saya sudah mendapatkan ilmu yg "sebenarnya" bertahun-tahun setelahnya. Ini mungkin terasa naif atau men "justifikasi" diri sendiri, tapi benar adanya panggilan jiwa saya yang saat itu baru kerja setahun lebih, lalu di minta untuk beralih profesi menjadi pendidik, saya merasakan sesuatu yg tidak klop. Akan terlalu gampang perjalanan hidup saya setelah ini. Dan apa yg terjadi kemudian berakibat kecaman keluarga saya di kampung. BODOH atau NAIF ya mirip-mirip lah karena ujungnya di tahun ke 10 memasuki dunia kerja saya di PHK dan dipaksa untuk berusaha cari uang sendiri. Kapok mu kapan broo ?



Balik ke awal perkenalan saya dengan dunia SMK mengingatkan kegalauan waktu itu karena perasaan aneh muncul, eealahhh ketemu dunia pendidikan lagi, gak nyesel dulu sempet nolak ? Kali ini beda posisinya karena saya diminta sebagai "pembimbing" dunia usaha di sekolah vokasi lewat program magang dari sebuah SMK di kediri. Dikirimlah beberapa anak untuk mencoba menjadi pegawai di usaha yg saya kelola dan kebetulan (atau tidak ya?) saat itu project yg saya geluti tidak menuntut skill berat, hanya cukup keberanian naik genteng.



Saya buang jauh-jauh kenangan "di cela" masa lalu dan bertekad membesarkan usaha yg terlihat recehan ini. Kenyataannya berwirausaha itu tidak seperti grafik y=x^2 melainkan y= sin(x), ada saat UP dan DOWN tapi harus bisa tetap semangat. Ya setidaknya anak SMK yg magang dapat merasakan bagaimana BOS nya galau marah-marah muka cemberut atau ada kalanya baik hati ngajak makan di mall. Mungkin tidak akan didapatkan kalau mereka magang di dinas pemerintahan atau pabrik yg sudah established. Harapannya mereka jadi tau kalau yg menulis "meme" wirausaha dan  mencatut nama almarhum Om Bob Sadino lupa menambahkan foot note term and condition : *) USAHA BISA BANGKRUT !





Foto diatas diambil saat diminta menandatangani kerjasama program magang bersama beberapa nama "besar" pelaku usaha di Jawa Timur. Perasaan minder saya buang jauh-jauh karena ini  menjadi pembuktian bahwa usaha saya ini layak disejajarkan dengan perusahaan-perusahan besar itu ( preeetttt )....ahhh bawaannya pesimis dan low self esteem mulu nih bapake.... kapan lagi kesempatan muncul untuk membanggakan usaha sendiri ? Asal gak berlebihan aja.



Bulan agustus 2019 saya mendapatkan kesempatan untuk berbagi ilmu jaman now ke sebuah SMK di Surabaya. Bapak kepala sekolahnya galau melihat tuntutan kurikulum dari kemendikbud dengan kompetensi guru-guru SMK (yg dulunya smea) tidak selaras dengan tuntutan Revolusi Industri 4.0. Terlihat muluk-muluk ya padahal tinggal mengajar sesuai buku saja kok repot ? Akan tetapi memang begitu adanya  di tahun 2019 karena sekolah sekarang dituntut membuka pandangan yg lebih luas kepada siswa mengenai topik jaman now seperti : Online business, Internet of Things, Machine learning , Coding dan sebagainya. Jadilah saya menyusun beberapa kelas untuk membantu ibu dan bapak guru yg tidak bisa CATCH UP dengan kemajuan jaman.



Salah satu kelas Teori - Praktek yang saya bahas adalah untuk membantu ibu guru pengajar di jurusan  " OTOMATISASI TATA KELOLA PERKANTORAN" , sebuah nama yang dahsyat untuk jurusan yg dulunya identik dengan tukang ketik. Dan tentu saja para siswa sangat tertarik dengan penjelasan beserta praktek yang saya bawakan. Jadi pengalaman saat mengatur teleconfrence jaman kerja di dunia telco , berguna setelah 10 tahun kemudian. Sesuailah harapan saya saat menolak tawaran menjadi pengajar beberapa tahun sebelumnya, karena pada akhirnya ilmu yg saya berikan sesuai PRAKTEK dan bukan copy paste dari hasil googling ....yess..yesss...yess....( sombong amat ! )


Sementara untuk jurusan "BISNIS DARING dan PEMASARAN" saya ajarkan prospek kerja di dunia Online Shoping bagaimana menjaring peluang "Niche Market" melalui jualan di medsos sampai menyusun bisnis secara lebih rapi melalui BMC seperti gambar diatas.  Saya juga mengajak narasumber yang sudah berpengalaman di dunia online shoping untuk berbagi ilmu ke anak kelas XI dan XII.



Bertepatan dengan hari guru yg diperingati saat tulisan ini saya ketik, mendorong saya untuk lebih gencar menyebarkan ilmu "PRAKTEK" yg sepertinya sudah menjadi kebiasaan saya, baik di dunia Solder Menyolder , Coding, Jaringan internet, Parabola dan banyak lainnya. Kebetulan saja bersamaan momennya dengan menteri pendidikan yg jebolan GOJEK yang kedepannya akan mendorong lebih ke PRAKTEK dari pada TEORI.

Ada yg mau meng "hire" saya mengajar teknologi jaman now di sekolah kalian  ? Ealaaahhh iklan ternyata....just call me 0813-3133-9072 ....semoga bisa membantu menyelaraskan kebutuhan dengan kenyataan. 
Share:

Rabu, 20 November 2019

Memahami Cloud Biar Ga Kelaut - AWS Cloud Day Surabaya 2019



Seminggu setelah mengikuti acara "jualan" dari Amazon Indonesia saya malah ditanyain oleh istri "Mana sih foto foto seminar kamu? Biasanya sudah narsis aja kok kali ini nggak? " Padahal aslinya tangan gatel juga buat ambil kamera smartphone kayak ibu-ibu yg duduk di depanku. Ya mungkin karena ada sedikit kegalauan penulis memahami cloud yang ditawarkan oleh sebuah company pelopor online shoping ini. Kenapa galau? Awalnya saat sign up buat ikutan acaranya yang terbayang paling juga jualan storage online atau server online gak jauh-jauh lah ekspektasi saya. Tapi ketika saya daftar untuk mencoba layanan cloud nya aws, akhirnya inilah yg membuat saya bingung dan jadi males untuk selfie di acara seminarnya.


Gambar diatas saya buat saat menyiapkan video "show off" yg saya persiapkan untuk acara ini, siapa tau ada yg bisa saya prospek dan tertarik dengan project iot saya. MQTT dan database mongodb yg saya gunakan pada project ini semuanya berbasis AWS akan tetapi saya tidak sadar bahwa layanan yg saya pakai merupakan layanan 3rd party yg sepenuhnya jauh dari harapan saya yaitu IOT yg langsung ke system IOT CORE nya amazon. Tools yg saya gunakan ternyata tidak lebih hanya memanfaatkan platform "remote computing" dan "serverless script" yg terdapat pada AWS. Semakin bingung nih saya sampai akhirnya tercerahkan saat mengikuti seminar.


Nah loo..gimana gak bingung saat saya memulai berkenalan dengan AWS, uuakehh poool item yg ditawarkan dan saya mulai dari mana nih ? Wahh gak usah datang aja ke seminarnya, bakalan mati kutu nih? hihihii gitu aja nyerah kan ada google-yotutube-facebook dan sebagainya dan benar saja saya menggunakan youtube untuk mejawab "Saya Mulai Dari Mana?" Jawabannya adalah EC2 dimana berada di paling ujung awal dari list servis yg ditawarkan oleh AWS (panjang banget kepotong tuh gambarnya). Tentu saja saya sangat mengenal EC2 (sombong amatttt) karena ternyata gak jauh berbeda dengan VPS alias server virtual berbasis windows maupun linux.








Ahh cupu amat masih pake windows ? Ya mampunya bikin scriptnya di windows sih lagian biar gak pusing-pusing beradaptasi karena kebetuan saja python yg sedang saya oprek berbasis windows. Linuxnya bagaimana ? Mau jadi bingung ? nih saya connect kan ya...



Tuh bisa kan ? Jadi setelah saya mempunyai VPS serasa punya PC baru di "CLOUD" dan saya bisa menaruh script di sana. Hasilnya cakep juga dan bisa dilihat dari 2 video youtube berikut:








Terasa sudah keren banget dan ahli nih saya, sampai saatnya jadi peserta seminar dan ketemu sama  orang-orang keren dari teamnya Amazon Indonesia. Dan saya sukses balik ke level newbie ...


AWS cloud day surabaya ini berlangsung tanggal 13 nopember 2019 dan lebih ditujukan kepada pelaku bisnis di surabaya dengan harapan tertarik menggunakan layanan cloud AWS. Tentu saja harapannya seperti itu dengan dibawanya pelaku bisnis lokal yg sudah memindahkan server dan aplikasinya ke platform cloud computing. Jawapos dot com ternyata telah berbasis cloud sejak 2016 dan saat ini sudah memangkas 1/2 budget jika menggunakan server premise (server fisik di data center). Dan yg menjadi momok bagi pegawai penjaga server adalah monitoring 24 jam, dan kini sepenuhnya dilakukan oleh AWS sehingga pekerja di jawapos dot com bisa tidur nyenyak kemudian bisa mencurahkan perhatiannya lebih ke konten dan kreativitas.

Apalagi sekarang AWS menjadi salah satu andalan berbagai perusahaan di dunia dalam hal pengaturan administrasi perusahaan dengan platform cloud computingnya berupa EC2 (elastic cloud computing) dan S3 (Simple Storage Service) sehingga aplikasi berupa SAP dan ERP sejenis bisa dijalankan di cloud. Lagi-lagi biaya maintenace server menjadi "0" NOL. Ya karena tentunya pihak amazon akan mengontrol sepenuhnya dengan garansi SLA 100% comply.

Topik industri 4.0 berupa pengolahan data alias Data Mining, Artificial Inteligent, dan Machine learning mungkin terlalu berat dipraktekkan dan cenderung hanya mudah diucapkan. Untuk itu AWS menawarkan solusi yaitu membuat orang yg awam, tidak perlu harus menjadi Data Scientist untuk mengolah data, semisal data forex forecasting. Saking banyaknya servis yg ditawarkan sampai-sampai terlihat AWS layaknya warteg yg "kebanyakan" menu dan semuanya enak untuk dicicipi.

Bagaimana dengan harga servis yg ditawarkan ? Ternyata sangat flexible dimana kita akan membayar sesuai apa yg kita butuhkan dan gunakan. Jadi semisal saat suatu layanan kita rasa berlebih maka bisa downgrade begitu juga sebaliknya. Saat kita tidak memerlukan layanan semisal lagi libur atau lagi ada kejadian tertentu maka user sepenuhnya memiliki hak untuk mematikan layanan tanpa harus membayar saat layanan mati. Bayangkan jika server kita berada di data center maka akan dikenakan charge bulanan yg FIX.


Lalu bagi penggiat microcontroller 8 bit bisa juga menggunakan layanan IOT Core dari AWS dan yg senang dengan Node.js bisa menggunakan AWS Lambda untuk menjalankan scriptnya secara SERVERLESS. Sampai tulisan ini saya buat penulis belum berhasil menghubungkan arduino dengan AWS IOT Core karena ada beberapa term "Security" yg sangat ketat dan sepertinya berlebihan diterapkan oleh AWS. Ya akhirnya penulis kembali lagi ke penggunaan EC2 untuk  menjalankan server mqtt dan selama response nya cepat maka tidak menjadi masalah.

Sebenarnya banyak yg ingin saya bagi tapi akan saya tulis lagi saat ilmu saya sudah banyak. Maklum saja ilmu KELAUT ini masih menjadi hal baru bagi penulis. Dan bila anda membaca 5 tahun setelah tulisan ini di posting dapat dipastikan anda sudah menggunakan layanan CLOUD lebih sering daripada saat tulisan ini ditulis. Para pelajar di SMK jurusan TKJ tidak akan lagi belajar menyambung kabel UTP tapi belajar configurasi node js serverless. Dan anak-anak dirumah main game nya bukan di PC bapaknya tapi di CLOUD.




Share:

Kamis, 31 Oktober 2019

{ IOT } Menyimpan Data Sensor lewat NBIOT untuk Ditampilkan Ke Chart dan Peta



Bahasan kali ini sempat tertunda akibat gejolak politik Indonesia sebelum pelantikan presiden. "Sombong Amat" hehehe...ya tertundanya secara tidak langsung sih karena coba deh perhatikan penampakan alat saya dibawah ini yg saya bawa keliling-keliling surabaya di awal oktober 2019.


Ngeri kali bukan? apalagi saat kasus penusukan pak wiranto saya jadi was-was membawa keliling alatnya ntar dikira mau sabotase kali...hehehe...ngelanturnya kejauhan kali ya ? Balik yuk ke topik utama dan kali ini IOT nya semakin lebih jauh dimana sensor akan dibawa berkeliling dan tiap pembacaan akan disimpan pembacaan  GPS nya. Seperti ini loo pesan mqtt berformat JSON yg dikirim oleh arduino...



Dari pesan MQTT diatas maka jika ingin mengolah data ber "GEO" atau memiliki data koordinat GPS maka tiap pembacaan sensor perlu disimpan ke dalam database. Arduino secara kemampuan nya yg 8 bit tentunya megap-megap kalau dihubungkan ke SQL, lalu berpikir apasih yg digunakan orang-orang diluar sana untuk database IOT ? Jawabanya adalah PYTHON + MONGODB






Jadilah saya belajar bahasa asing lagi nih...ya untung saja sukses dan langkah belajarnya seperti ini untuk membantu pembaca memahami lebih mudah.


PYTHON + MQTT

Masih ingat tulisan terdahulu tentang ESP dan MQTT ? Sekarang dengan python ada library khusus menangani pesan PUBLISH dan SUBSCRIBE dengan nama pahomqtt. Jadi setelah berhasil mempelajari dasar-dasar python tidak lama kemudian saya berhasil menguasai pahomqtt seperti script berikut ini :

import paho.mqtt.client as mqtt #import lib mqtt

led = 0
segmen = 0

############jika ada mqtt yg di sub masuk#########
def on_message(client, userdata, message): 
    print("message received " ,str(message.payload.decode("utf-8")))
    print("message topic=",message.topic)
    print("message qos=",message.qos)
    print("message retain flag=",message.retain)
    global led
    global segmen
    client.publish("/test/seg","SEG"+ str(segmen)) 
    print("Publishing message to topic LED & 7 SEG")    
    print("7 SEGMEN : " + str(segmen))
    segmen+=1
    if segmen == 10:
       segmen = 0
    if led == 0:    
       print("LED ON")
       client.publish("/test/led","ON")
       led = 1
    else :    
       print("LED OFF")   
       client.publish("/test/led","OFF")
       led = 0
    print('')
    print('')
########################################
broker_address="soldier.cloudmqtt.com"
broker_port=146xx
broker_user="xxxxxx"
broker_pass="xxxxxx"
print("creating new instance")
client = mqtt.Client("P1") #create new instance
client.on_message=on_message #attach function to callback
client.username_pw_set(broker_user,broker_pass)
print("connecting to broker")
client.connect(broker_address,broker_port) #connect to broker
#start the loop
print("Subscribing to topic","/test/DHT")
client.subscribe("/test/DHT")
client.loop_forever()




Script diatas merupakan koding python yg akan men SUB topik /test/DHT dan kemudian akan melakukan PUB terhadap LED dan 7 Segmen. oo iya jangan salah paham ya script python nya saya jalankan di PC yg terhubung ke internet bukan di ARDUINO.


PYTHON + MONGODB


Database umum yg digunakan saat ini pasti gak jauh dari SQL deh...tapi saya menemukan yg lebih simple dan ada GRATISAN nya yaitu MONGODB . Benar saja mongodb mungkin masih awam ditelinga orang tapi diluar sana bisa dilihat penggunaan mongobd cukup intensif mungkin dikarenakan karena data IOT yg bersifat tidak atau cenderung kurang relational dan tentunya datanya sederhana. Untuk itu kita bisa menggunakan mongodb gratis dengan nama MONGODB ATLAS dan bersifat cloud based.





Jika anda pengguna SQL maka record dan field pada mongodb diistilahkan sebagai collection . Python sendiri tidak mempunyai fasilitas khusus untuk mongodb sehingga dibutuhkan library PYMONGO sebagai bahasa dasar untuk simpan-hapus-filter-update database. Secara singkat hasil pembelajaran saya membaca suhu dan kemudian menyimpannya pada MONGODB seperti script berikut ini :


import paho.mqtt.client as mqtt #import the client1
import pymongo
import json
from datetime import datetime


myclient = pymongo.MongoClient("mongodb+srv://user:pwd@cluster0-jb06l.mongodb.net/test?retryWrites=true&w=majority")
mydb = myclient["humitemp"]
mycol = mydb["data_humitemp"]

##########simpan DB###########
def save_db(isi):
    dateTimeObj = datetime.now()
    print('')   
    print("<===SAVE TO MONGODB===>")
    print(dateTimeObj)
    x=json.loads(isi)
    y={"waktu":dateTimeObj , "suhu": x["suhu"]  , "humi": x["humi"]  }
    z = mycol.insert_one(y)
   #print list of the _id values of the inserted documents:
    print("database masuk dengan id : ")
    print(z.inserted_id)
    print("========================")
    print('')
###############BACA SUB MESSAGE#################
def on_message(client, userdata, message):
    print("message received " ,str(message.payload.decode("utf-8")))
    print("message topic=",message.topic)
    print("message qos=",message.qos)
    print("message retain flag=",message.retain)
    save_db(str(message.payload.decode("utf-8")))
   
################################
broker_address="soldier.cloudmqtt.com"
broker_port=146xx
broker_user="xxxx"
broker_pass="xxxxxx"
print("creating new instance")
client = mqtt.Client("P1") #create new instance
client.on_message=on_message #attach function to callback
client.username_pw_set(broker_user,broker_pass)
print("connecting to broker")
client.connect(broker_address,broker_port) #connect to broker
 #start the loop
print("Subscribing to topic","/test/DHT")
client.subscribe("/test/DHT")
client.loop_forever()


Hasilnya tidak mengecewakan pada MONGODB atlas karena ada fasilitas report CHART grafik sehingga sangat menyingkat waktu coding



Yang menjadi titik menariknya adalah data GEOSPATIAL juga bisa ditampilkan melalui MONGODB ATLAS.



Nanti deh kita bahas kapan-kapan setelah pembaca mahir di PYTHON vs ARDUINO...selamat mumet kawan...
Share:

Kontak Penulis



12179018.png (60×60)
+628155737755

HP: 081331339072
Mail : ahocool@gmail.com

Site View

Categories

555 (6) 7 segmen (3) adc (3) amplifier (1) analog (9) android (11) arduino (4) attiny (1) attiny2313 (16) blog (1) bluetooth (1) cmos (2) crypto (2) dasar (35) display (3) gcc (1) iklan (1) infrared (2) Input Output (3) iot (4) jam (6) jualan (12) kereta api (1) keyboard (1) keypad (3) kios pulsa (2) kit (6) komponen (12) komputer (3) komunikasi (1) kontrol (2) lain-lain (8) lcd (2) led (9) led matrix (6) line tracer (1) lm35 (1) memory (1) metal detector (4) microcontroller (50) mikrokontroller (2) mikrotik (5) ninmedia (1) paket belajar (19) palang pintu otomatis (1) parabola (28) pcb (2) project (33) proyek (1) radio (3) remote (1) revisi (1) rfid (1) robot (1) rpm (2) rs232 (1) script break down (3) sdcard (3) sensor (1) sharing (2) signage (1) sms (6) software (18) tachometer (2) telepon (7) televisi (53) television (1) transistor (1) troubleshoot (3) tulisan (48) tutorial (75) tvri (1) vu meter (1) vumeter (1) wav player (3) wayang (1) wifi (1)

Diskusi


kaskus
Forum Hobby Elektronika