Semua Tentang Belajar Teknologi Digital Dalam Kehidupan Sehari - Hari

  • 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

  • Ayo Migrasi TV Digital

    Kami bantu anda untuk memahami lebih jelas mengenai migrasi tv digital, apa sebabnya dan bagaimana efek terhadap kehidupan. Jasa teknisi juga tersedia dan siap membantu instalasi - setting perangkat - pengaturan antena dan distribusi televisi digital ke kamar kos / hotel

  • 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

  • Node Red - Kontrol Industri 4.0

    Teknologi kontrol sudah melampaui ekspektasi semua orang dan dengan kemajuan dunia elektronika, kini semakin leluasa berkreasi melalui Node Red

Jumat, 22 September 2023

[Tutorial] Sensor Suhu Ds18b20 dan output ke display oled

 




Pada beberapa tulisan di blog ini telah sering dibahas mengenai sensor suhu dasar, baik yang paling sederhana LM35 dan yang lumayan cukup sering dipakai untuk sensor IOT yaitu DHT11. Namun untuk pengukuran yang lebih akurat dan mengakomodir suhu negatif, maka kali ini saya pilihkan sensor suhu digital DS18B20. Secara umum rangkaian DS18B20 memerlukan 3 pin dan sebuah resistor pull up data bernilai 4,7K ohm. Praktek kali ini dilakukan bersama mahasiswa teknik listrik vokasi unesa angkatan 2022.





Untuk dapat menjalankan sensor ini pada arduino atau esp8266, library yang perlu di install pada sketch arduino yaitu One Wire dan Dallas Temperature. Perhatikan penjelasan script dasar berikut ini untuk mendapatkan pembacaan suhu yang tepat.


#include <OneWire.h>
#include <DallasTemperature.h>

// Sensor data ke digital pin 4, sesuaikan yg dipakai
#define ONE_WIRE_BUS 4

// inisialisasi nama library one wire
OneWire oneWire(ONE_WIRE_BUS);

// menghubungkan library onewire vs Dallas Temperature 
DallasTemperature sensors(&oneWire);

void setup(void)
{
  // Start serial baud 9600
  Serial.begin(9600);
  // memulai ibrary library
  sensors.begin();
}

void loop(void){ 
  // Panggil pembacaan sensor pada bus one wire
  sensors.requestTemperatures(); 
  //tulis ke serial monitor
  Serial.print("Celsius temperature: ");
  // kasi index 0 karena cuman 1 sensor, bisa untuk banyak sensor
  Serial.print(sensors.getTempCByIndex(0)); 
  Serial.print(" - Fahrenheit temperature: ");
  Serial.println(sensors.getTempFByIndex(0));
  delay(1000);
}

Dan jika rangkaian sudah benar maka hasilnya seperti berikut ini :



Catatan jika menggunakan wemos atau nodemcu, pin yang digunakan disesuaikan dengan tulisan pin pada board, namun asal board yang digunakan sesuai. Perhatikan gambar dibawah ini :




Jadi jika library boardnya sesuai maka cukup mengikuti penamaan pada board yg dipakai, seperti contoh dibawah ini :

 
// Sensor data ke digital pin D4, sesuaikan yg dipakai
#define ONE_WIRE_BUS D4

-  Display Ke OLED 


Layar oled yang kita gunakan adalah OLED SSD12306 dengan lebar layar 128x64 pixel. 



Pin dari OLED ini berbasis I2C 3.3 volt, sehingga VCC/VDD jangan sampai salah colok harus ke pin 3.3 volt pada wemos kamu. I2C merupakan komunikasi data 2 kabel dengan SCK (serial clock) dan SDA (serial data), dimana pada wemos pin SCK = D1 , sedangkan SDA = D2. Untuk mencoba melakukan testing terhadap display oled kamu bisa menggunakan script example pada Library Adafruit_SSD1306 .








catatan: Pada example terdapat kesalahan address dari oled yang dijual dipasaran ( 128 x 64 ) yang seharusnya 0x3C

#define OLED_RESET     -1 // Reset pin # (or -1 if sharing Arduino reset pin)
#define SCREEN_ADDRESS 0x3C ///< See datasheet for Address; 0x3D for 128x64, 0x3C for 128x32
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);


Lalu mari kita gabungkan 2 koding diatas untuk menampilkan pengukuran sensor suhu DS12B20 pada OLED.


#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#include <OneWire.h>
#include <DallasTemperature.h>


#define SCREEN_WIDTH 128 // display display width, in pixels
#define SCREEN_HEIGHT 64 // display display height, in pixels

#define SENSOR_PIN D4   // pin sensor DS18B20
#define BUZZER_PIN D5   // pin buzzer

#define display_RESET     -1 // Reset pin 
#define SCREEN_ADDRESS 0x3C ///address i2c oled 
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, display_RESET);

OneWire oneWire(SENSOR_PIN);         // setup a oneWire 
DallasTemperature tempSensor(&oneWire); // pass oneWire 



unsigned long previousMillis = 0;

String tempString,tempString1;
float batas = 35;     // batas suhu biar alarm
float tempCelsius;


void setup() {
  Serial.begin(9600);
  pinMode(BUZZER_PIN,OUTPUT);
  digitalWrite(BUZZER_PIN,LOW);

  // initialize display display with address 0x3C for 128x64
  if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
    Serial.println(F("SSD1306 allocation failed"));
    while (true);
  }

  delay(2000);         // wait for initializing
  display.clearDisplay(); // clear display

  display.setTextSize(1);          // text size
  display.setTextColor(WHITE);     // text color
  
  displayDisplayCenter("Teknik Listrik", 4);
  displayDisplayCenter("Vokasi Unesa 2023",56);

  display.setTextSize(2);
  display.setCursor(0, 32);        // position to display

  tempSensor.begin();     // initialize the sensor
  tempString.reserve(10); // to avoid fragmenting memory when using String


  

  
}

void loop() {
  tempSensor.requestTemperatures();             // send the command to get temperatures
  tempCelsius = tempSensor.getTempCByIndex(0);  // read temperature in Celsius

  
  tempString  = String(tempCelsius, 2); // two decimal places
  tempString += (char)247;
  tempString += "C";
  
  //biar ketumpuk hitam dulu jika suhu nya berubah
  if(tempString != tempString1)
  {
  display.setTextColor(BLACK);
  displayDisplayCenter(tempString1,28);
  }
  
  tempString1= tempString; 
  Serial.println(tempString); // print the temperature in Celsius to Serial Monitor
  
  //lanjut tulis warna putih
  display.setTextColor(WHITE);
  displayDisplayCenter(tempString,28);


  if( tempCelsius >= batas)  //cek alarm vs buzzer
   {

    digitalWrite(BUZZER_PIN,HIGH);
    delay(200);
    digitalWrite(BUZZER_PIN,LOW);
    delay(50);
   }
  
  else digitalWrite(BUZZER_PIN,LOW);
   
}

//function agar tulisan rata tengah (center)

void displayDisplayCenter(String text, int posisi) {
  int16_t x1;
  int16_t y1;
  uint16_t width;
  uint16_t height;

  display.getTextBounds(text, 0, 0, &x1, &y1, &width, &height);

  display.setCursor((SCREEN_WIDTH - width) / 2, posisi);
  display.println(text); // text to display
  display.display();
}

Dan hasilnya menjadi keren seperti ini :




Share:

Rabu, 20 September 2023

[Tutorial] Dasar Input Analog Mikrokontroler - Output ke Led Strip WS2812

 


Kita lanjutkan pembelajaran kali ini bersama dengan kuliah mikrokontroler mahasiswa teknik listrik unesa surabaya, dengan topik analog input. Sebagai mana kita bahas sebelumnya, sketch arduino sudah memiliki contoh-contoh program yang bisa dilihat pada sketch langsung atau pada website arduino.cc . Saya sekarang akan mengambil sebuah potensiometer yang bisa digunakan pada pengatur volume audio dan saya buat sebagai rangkaian pembagi tegangan 5 volt.


Catatan : Jika pake esp8266 maka tegangan 0 - 3,3 volt


A0 sampai A5 merupakan analog input dari arduino dimana memiliki range tegangan yang di ijinkan 0-5 volt. Resolusi atau kerapatan data bit nya adalah 10 bit, sehingga 5 volt diwakili oleh binari 0b1111111111 atau desimal 1023. Dari rumus matematika  sederhana dengan membagi 5 volt dengan 1023,  maka kita bisa membuat voltmeter sederhana dan bisa membaca tegangan yang diberikan oleh pin tengah dari potensiometer 10 k ohm yang saya gunakan. Silahkan coba script berikut ini :


#define ADC_PIN 1   //pin ADC 

float tegangan ;  //variabel tegangan desimal


void setup() {

  //pakai monitor serial

  Serial.begin(9600);

}


void loop() {


   //resolusi per bit = 5v/1023 = 0.0049 volt

   //baca ADC

   tegangan = analogRead(ADC_PIN) * 0.0049;

 

   //kirimkan output pembacaan ke serial

   Serial.print( "Tegangan = ");

   Serial.print( String(tegangan,2) );

   Serial.println (" volt");

    

  delay(100); 

  

}





Dari hasil diatas dapat dilihat perubahan tiap bit mewakili 4.9 miliVolt. Lalu bagaimana membuatnya lebih menarik ? Kita gunakan Led Strip ws2812b yang lagi ngetop belakangan ini. Untuk itu baca dulu pembahasan di blog yang saya temukan di internet disini.

Saya telah membeli 30 buah led ws2812b seharga 900 rupiah sebiji dan saya rangkai dengan arduino pro mini milik saya. Bisa menggunakan arduino jenis lain maupun esp8266 yang dimiliki, dan usahakan jika lednya banyak maka gunakanlah power suply 5 volt terpisah seperti pada gambar dibawah ini :




*) gunakan resistor 330 ohm sebagai pengaman agar led awal tidak cepat rusak


Koding yang saya gunakan adalah sebagai berikut :


#include <Adafruit_NeoPixel.h> //library


#define LED_PIN 4         //sesuaikan pin data

#define LED_COUNT 30      //sesuaikan jumlah led


Adafruit_NeoPixel strip(LED_COUNT, LED_PIN, NEO_GRB + NEO_KHZ800);


int posisi_led;     //variabel posisi led


void setup() {

//inisialisasi led strip 

  strip.begin();           

  strip.setBrightness(30); 


}


void loop() {

      

 // baca adc port A1 , sesuaikan

 //34 ==> pembulatan 1023/30LED

  

 posisi_led = analogRead(1)/34;

 

  strip.clear();

  strip.setPixelColor(posisi_led, 255, 255, 255);

  strip.show();   

 

  delay(100); 

  

}


Hasil dari coding diatas dapat dilihat pada animasi paling atas. Selamat Mencoba !! 

Share:

[Tutorial] Dasar Input - Output Pada Mikrokontroler




Pada umumnya terdapat 2 jenis input output yang terlihat paling "sederhana" dan paling sering dibahas pada sebuah sistem mikrokontroler AVR, arduino maupun ESP 8266. Dari list dibawah ini, nomer 1 dan 2 akan kita praktekkan pada tulisan blog kali ini, bersama dengan adik - adik mahasiswa di jurusan teknik listrik vokasi unesa Surabaya. 


Jenis Input Output :

  1. Digital Pin
  2. Analog Pin
  3. PWM
  4. Serial
  5. I2C
  6. SPI

- DIGITAL PIN

Digital pin ini merupakan hal yang paling dasar yang pertama kali harus dipraktekkan ketika memulai mikrokontroler sekelas arduino. Coba pembaca buka sketch dan akan menemukan example yang bernama "blink" yang merupakan coding untuk menyalakan dan mematikan LED internal pada bord arduino ( jenis apapun ) yang umumnya berada pada pin 13.


 void setup() {
  // inisialisasi digital pin LED_BUILTIN sebagai output.
  pinMode(LED_BUILTIN, OUTPUT);
}

//the loop function muter terus
void loop() {
  digitalWrite(LED_BUILTIN, HIGH);  // HIGH = Nyala
  delay(1000);                      // Tunggu 1 detik
  digitalWrite(LED_BUILTIN, LOW);   // LOW = Mati
  delay(1000);                      // Tunggu 1 detik
}


Dan kemudian perhatikan gambar ekuivalen dari sebuah Bit Input Output pada mikrokontroler, melalui tombol sebagai Input dan Led sebagai output .



Saya ingin membuat penekanan tombol switch tactile bereaksi terhadap led, dan tidak ingin menjadi on off seperti saklar biasa. Jadi saat tombol (aktif low / pull up) maka akan merubah status dari led nyala atau mati. Perhatikan script berikut dan akan saya bahas per bagian.


const int buttonPin = 9;     // pin push button
const int ledPin =  13;      // pin LED

int buttonState = 0;         // variable status tombol
bool ledstate;

void setup() {
  //Pin LED sebagai output
  pinMode(ledPin, OUTPUT);
  // tombol sebagai intput
  pinMode(buttonPin, INPUT);
   
  //status awal led mati 
  ledstate = false;
  digitalWrite(ledPin, LOW);

  Serial.begin(9600); //agar bisa dilihat pada terminal
}

void loop() {

  // baca status tombol
  buttonState = digitalRead(buttonPin);

  // cek status tombol High atau Low
  if (buttonState == HIGH) {
    
    //nyalakan led dan ubah status led 
    if ( !ledstate){
      digitalWrite(ledPin, HIGH);
      ledstate =true;
      //kirim serial
      Serial.println("Kondisi led = Nyala");
     }
    //matikan led
     else {
      digitalWrite(ledPin, LOW);
      ledstate = false;
      Serial.println("Kondisi led = mati");
    }
  delay(200);
    
  } 
  
}


Dari script diatas, penjelasan perbagian  bisa dilihat pada bagian script berwarna merah, dan yang paling utama adalah proses perubahan status boolean dari led status yang akan tersimpan sesuai kondisi terakhir dari led.

    //nyalakan led dan ubah status led 
    if ( !ledstate){
      digitalWrite(ledPin, HIGH);
      ledstate =true;
      //kirim serial
      Serial.println("Kondisi led = Nyala");
     }

    //matikan led
    else {
      digitalWrite(ledPin, LOW);
      ledstate = false;
      Serial.println("Kondisi led = mati");
    }


Terdapat perintah Serial.println yang bertujuan untuk melihat kondisi led pada serial monitor yang merupakan fasilitas debuging paling utama pada sketch arduino.




Pada tulisan selanjutnya akan saya bahas input analog yang sangat bermanfaat.


Share:

Selasa, 06 Juni 2023

[ Node - RED ] Menghubungkan Relay Modbus Ke Dalam Node-Red Web UI


 

Untuk melanjutkan praktek berikut ini, disarankan terlebih dahulu membaca penjelasan mengenai Relay Modbus 4 channel disini dan persiapkan bahan-bahan nya yang masih sama. Kali ini akan saya jelaskan langkah menghubungkan Modul Relay Modbus-Rs485 ke node red, sehingga untuk pembaca yang belum mengenal node red dapat memulai perkenalannya dari tulisan saya sebelumnya disini.

Pada beberapa tulisan node-red sebelumnya saya hampir selalu menggunakan perangkat input / sensor modbus sehingga hanya terbatas pada function modbus 01, 03 dan 04 (read coil, input and read register) seperti pada praktek pembacaan pzem disini.  Kali ini saya bahas alat sebagai output yg cocok untuk membahas function 05 (write single coil). Perhatikan perintah serial modbus rtu untuk menghidupkan relay 1 berikut ini ( asumsi id device = 01):


01 05 00 01 FF 00 DD FA


Kode diatas berupa Hexa jadi kalau dipisah-pisah berdasarkan standar modbus adalah seperti berikut:

01     =  Alamat device id slave
05     =  Perintah Kontrol Single Relay/ function 05
00 01  = 2 byte alamat relay 0x0001
FF 00  = 2 byte yang menyatakan logic TRUE 
DD FA  = Checksum / CRC 16 modbus



Sedangkan untuk melepas / open  relay 3 kode modbus rtu nya seperti berikut ini :


01 05 00 03 00 00 3D CA


Kode diatas berupa Hexa jadi kalau dipisah-pisah berdasarkan standar modbus adalah seperti berikut:

01     =  Alamat device id slave
05     =  Perintah Kontrol Single Relay/ function 05
00 03  = 2 byte alamat relay 0x0001
00 00  = 2 byte yang menyatakan logic FALSE
3D CA  = Checksum / CRC 16 modbus


Sedangkan pada node red flow,  palete yg kita pilih adalah Modbus Write :




Penjelasan :

  1. Function yang dipilih 05 (Force Single Coil)
  2. Alamat dari relay (dimulai dari 0 untuk modul relay rs485 yg dipakai)
  3. Komunikasi yang dipakai, seting lanjutannya dibawah ini.




Jadi untuk meng-"CLOSE" dan "OPEN" relay sesuai address nya, maka cukup di inject nilai logika boolean True dan False ke Node Modbus Write.



Dari flow diatas maka ketika tombol inject ditekan akan mengirim logika true dan false langsung ke perangkat relay. Sesimpel itu kok ! Lalu bagaimana jika mengaktifkan dan mematikan semua relay? Kita akan gunakan perintah / function 15 (0F).



01 0F 00 00 00 08 01 FF BE D5


Kode diatas berupa Hexa jadi kalau dipisah-pisah berdasarkan standar modbus adalah seperti berikut:

01     =  Alamat device id slave
0F     =  Perintah Kontrol Multiple Relay/ function 15
00 00  = 2 byte alamat awal relay start 0x0000
00 08  = 2 byte alamat terakhir relay 0x0008 (kenapa 8 ? karena modul yg paling banyak 8 relay)
01     = 1 byte yang akan ditulis ke relay
FF     = 1 byte yang mewakili relay 8 s/d 0  sesuai bit nya, jadi bisa kombinasi bit

BE D5    = checksum

*) Keterangan FF berarti semua relay (8 buah ) mendapat logika 1 ( 1 1 1 1 1 1 1 1 ) alias nyala semua, jadi kalau 00 berarti mati semua relaynya




Pada flow node red kita akan gunakan function 15 dan kita inject berupa array / json yang berisi 8 buah logika true dan false. Contoh flownya bisa dilihat dibawah.








Sehingga akan sangat mudah merubah node inject menjadi node web ui berupa "switch" seperti pada gambar flow dibawah. Namun jika masih awam dengan web UI nya node red bisa membaca disini dan disini.






Outputnya menjadi lumayan menarik, bisa mengontrol modul relay modbus-rs485 melalui web browser.







Share:

Senin, 05 Juni 2023

Cara Mengontrol Modul Relay Modbus - RS485 Melalui PC

 



Setelah beberapa kali membahas mengenai cara akses perangkat sensor ber-protokol Modbus RTU, maka kali ini akan dipraktekkan bagaimana cara mengontrol relay yang modulnya banyak beredar di marketplace yaitu bertipe 485 relay 2 ch / 4 ch / 8 ch  V1.1 . Modul ini banyak dibahas di berbagai blog, bagaimana secara gamblang sekali mengirim datanya menggunakan arduino, dimana kebanyakan menggunakan perintah serial langsung jadi (berupa sequence modbus) beserta dengan ceksum CRC mod16 di belakangnya.


Sebelumnya bisa dibaca seri tulisan mengenai modbus disini dan praktek pzem disini


Namun seperti  biasa bukan blog aisi555 kalau hanya berbagi script langsung pakai tanpa membuat bingung pembaca. Eeiittt....kali ini gampang kok, cukup sediakan modul relay nya seperti diatas beserta power suply 12 volt dan jangan sampai ketinggalan perangkat USB to RS485 yang akan menghubungkan PC ke perangkat relay secara RS485. Setelah menghubungkan 2 kabel A+ dan B-  antara USB to RS485 vs Modul Relay, maka dari berbagai sumber di internet ( disini dan disini ) saya pilihkan beberapa perintah serial siap pakai yg bisa dicoba melalui terminal/putty/realterm. Ingat bahwa perangkat yang baru datang secara default /awal memiliki address 1 dengan BaudRate 9600.




Cara Mengetahui Address :

00 03 00 00 00 01 85 DB

Return:

00 03 02 00 01 44 44  ==> 01 itu address (warna merah)


Kita asumsikan address dari modul adalah 01 ( 1 byte paling depan adalah address)


Relay 0 ON  : 01 05 00 00 FF 00 8C 3A

Relay 0 OFF: 01 05 00 00 00 00 CD CA


Relay 1 ON : 01 05 00 01 FF 00 DD FA 

Relay 1 OFF: 01 05 00 01 00 00 9C 0A 


Relay 2 ON : 01 05 00 02 FF 00 2D FA

Relay 2 OFF : 01 05 00 02 00 00 6C 0A 


Relay 3 ON : 01 05 00 03 FF 00 7C 3A

Relay 3 OFF : 01 05 00 03 00 00 3D CA


*) Warna orange / 2 byte di belakang adalah CRC Modbus 16


Saya sih lebih senang menggunakan Real Term sebagai serial terminal untuk mengetestnya seperti yang saya lakukan sebelumnya ( klik disini untuk mengetahui seting nya) , dan hasil capture saya dibawah ini :



CRC Modbus 16 di bagian belakang (2 byte terakhir) dapat di masukkan langsung atau membiarkannya dibuatkan langsung oleh RealTerm. Jangan lupa menambahkan 0x sebelum hexanya agar tidak terjadi error (khusus realterm)


Perintah lainnya yang mungkin berguna :


SEMUA ON : 01 0F 00 00 00 08 01 FF BE D5

SEMUA OFF : 01 0F 00 00 00 08 01 00 FE 95


Membalik posisi relay / Flip / Toggle

Relay 0 Flip / Toggle : 01 05 00 00 55 00 F2 9A

Relay 1 Flip / Toggle : 01 05 00 01 55 00 A3 5A

Relay 2 Flip  / Toggle : 01 05 00 02 55 00 53 5A

Relay 3 Flip  / Toggle : 01 05 00 03 55 00 02 9A

 

Merubah address (contoh dari 01 ke 09 ) :  01 10 00 00 00 01 02 00 09 66 56

Merubah address (contoh dari 09 ke 01 ) : 09 10 00 00 00 01 02 00 01 00 50




Lalu animasi paling atas gimana ya ? Saya gunakan python untuk merubah relay secara berurutan:


import serial
from time import sleep

ser = serial.Serial("COM25", baudrate=9600, timeout=3.0)

tog1 =b'\x01\x05\x00\x00\x55\x00\xF2\x9A'
tog2 =b'\x01\x05\x00\x01\x55\x00\xA3\x5A'
tog3 =b'\x01\x05\x00\x02\x55\x00\x53\x5A'
tog4 =b'\x01\x05\x00\x03\x55\x00\x02\x9A'


while (True):
    print("Merubah relay secara berurutan ..")
    ser.write(tog1)
    sleep(0.5)
    ser.write(tog2)
    sleep(0.5)
    ser.write(tog3)
    sleep(0.5)
    ser.write(tog4)
    sleep(0.5)

Pada kesempatan selanjutnya saya akan mengakses modul relay modbus RS 485 ini melalui node red baca disini.
Share:

Selasa, 28 Maret 2023

Frekuensi TV Digital Denpasar Bali Saat Analog Switch Off

 



Sejarah pertelevisian di pulau Dewata Bali dimulai saat TVRI Bali (dulunya TVRI stasiun Denpasar) mulai mengudara pada tanggal 16 Juli 1978. Kantor sekaligus studio pertama berada di tengah kota, tepatnya di Jalan Kapten Cokorda Agung Tresna, Sumerta Kelod, Denpasar Timur. Keberadaan TVRI Bali diharapkan mampu menjadi media untuk mengembangkan dan melestarikan sekaligus mendokumentasikan seni budaya Bali. 

TVRI Bali mengalami bebarapa kali perubahan bentuk badan hukumnya dan organisasi yaitu mulai dari Yayasan, Unit Pelaksana Teknis (UPT) Departemen Penerangan RI, Perusahaan Jawatan (Perjan), Perseroan Terbatas (Persero) dan terakhir menjadi Lembaga Penyiaran Publik (LPP) yang selanjutnya disebut Lembaga Penyiaran Publik Televisi Republik Indonesia - LPP TVRI, (LPP TVRI  Bali).                                                                                                                                        

Sedangkan televisi swasta yang masuk ke Bali pertama kalinya adalah SCTV Surabaya yang mengudara pada tahun 1990. Penduduk di bali utara sangat gembira menerima lubernya perangkat pemancar dari bukit darmo surabaya yang dengan tanpa halangan serta 'bantuan' pantulan pasang surut air laut mampu mem-"propagasi" sinyal ke daerah Singaraja, walau harus menggunakan antena UHF 25 meter dengan tambahan booster. Dan hasilnya jadi begitu ramainya atap rumah penduduk di Bali utara saat itu dengan bentang kawat antena yang saling-silang diantara rumah ke rumah.




Secara resmi Denpasar merupakan kota kedua setelah Surabaya di Indonesia yang bisa menerima siaran SCTV, yang pada saat itu masih berupa televisi lokal di Surabaya. SCTV Denpasar awalnya dibentuk bukan sekedar sebagai stasiun transmisi semata, melainkan stasiun jaringan dari SCTV Surabaya. Keduanya memiliki program-program dan jam tayang acara yang mungkin sama, tetapi siarannya tidak langsung dari pusatnya (relai). Kehadiran SCTV Denpasar sudah direncanakan oleh manajemen SCTV beberapa waktu sebelum stasiun televisi ini bersiaran resmi di Surabaya pada 24 Agustus 1990.

Selanjutnya, pada 14 September 1991 SCTV Denpasar resmi mengudara pada 45 UHF, dengan awalnya siarannya hanya selama 4 jam (atau 57 jam/minggu, lebih rendah dari SCTV Surabaya yang mencapai 105 jam/minggu), yang kemudian ditingkatkan menjadi 7 jam/hari pada 1 November 1991. Pancaran siarannya dapat ditangkap dalam radius 60–80 km, meliputi Denpasar, Gianyar, Tabanan, Badung dan beberapa daerah sekitarnya. Konon, akibat kehadiran SCTV Denpasar, pemirsa TVRI Denpasar mengalami penurunan. Mulai 1 Januari 1992, bersama RCTI Jakarta, RCTI Bandung dan SCTV Surabaya, SCTV Denpasar mulai menyiarkan beberapa program-program secara bersamaan.


ERA DIGITAL


Bagi lembaga penyiaran, migrasi sistem analog ke digital akan membuat industri penyiaran menjadi lebih siap untuk bersaing di era konvergensi melalui adopsi teknologi baru dan pemanfaatan multi kanal siaran. Investasi juga akan lebih efisien dalam jangka panjang, sejalan dengan potensi pemanfaatan infrastruktur bersama di era TV digital, tandas Dirjen IKP Kementerian Kominfo.

Peralihan siaran tv analog ke digital juga memberikan manfaat besar bagi negara. Dampak dari beralihnya sistem analog ke digital akan menghasilkan penggunaan spektrum frekuensi 700 MHz yang lebih efisien.  Menurut Dirjen Usman Kansong, peralihan itu menghasilkan digital dividen pemanfaatan spektrum frekuensi radio.

"Yang dapat digunakan untuk mewujudkan internet cepat yang lebih merata, efek berganda di sektor ekonomi digital, dan memberikan tambahan pemasukan APBN dari sektor Penerimaan Negara Bukan Pajak (PNBP). Selain itu juga akan terjadi potensi peningkatan PDB yang signifikan,” ungkapnya.


Mundur ke 31 Maret 2023


Direktur Penyiaran Direktorat Jenderal Penyelenggaraan Pos dan Informatika (Ditjen PPPI) Kemenkominfo Geryantika mengatakan bahwa Analog Switch Off (ASO) atau penghentian siaran analog di wilayah Bali dan Palembang yang sebelumnya dijadwalkan pada 20 Maret 2023, mundur menjadi 31 Maret 2023.

Dengan demikian, pada 20 Maret 2023 pukul 24.00 waktu setempat, ASO diprioritaskan untuk dilaksanakan di wilayah Kalimantan 1 yakni Kota Banjarmasin dan 4 kabupaten/kota di sekitarnya. Sedangkan untuk 9 kabupaten di seluruh Bali dan Sumatera Selatan 1 yakni Kota Palembang dan 3 kabupaten/kota di sekitarnya dilaksanakan pada 31 Maret 2023 pukul 24.00 waktu setempat.


Saluran Digital di Bali (Denpasar) akan meliputi saluran seperti pada video berikut :




- 30 UHF ( 546 MHz - Mux TVRI )   :  TVRI Nasional, TVRI Bali, TVRI World, TVRI Sports, Kompas TV, NET , Bali TV, Jawapos TV


- 36 UHF ( 594 MHz - Mux Metro ) :  Metro TV, Magna Channel, BN TV, SCTV, Indosiar, Mentari TV, Moji


- 40 UHF ( 626 MHz - Mux Nusantara ) :  Nusantara TV, Harum TV, Gold TV, Bhineka TV


- 43 UHF ( 642 Mhz - Mux Viva Group) :  ANTV, TVOne, VTV, RCTI, MNC TV, GTV, Inews, TransTV, Trans7



Untuk panduan, kami telah review beberapa merek STB digital yg sudah ada di pasaran dan anda kini bisa bandingkan sesuai fasilitas dan keunggulannya :


Matrix Apple     - Polytron PDV 600T2   - Venus Cabe Rawit  - Evinix H-1  - Akari ADS-2230

-Tanaka


Antena Digital paling jernih :

- Fleco AT-56



Bagi anda yg berada di lokasi lain di Nusantara dapat juga membaca update perkembangan  migrasi TV digital di  kota-kota besar seluruh Indonesia :

Surabaya  MNC  ,  EMTEK , VIVA )

Malang

Jember 

Kediri

Jombang & Mojokerto

Madiun

Jogja

Semarang

Banjarmasin

Makasar

Medan

Palembang

Perbatasan Malaysia

Share:

Jumat, 03 Maret 2023

PZEM-004T : Terhubung ke Internet melalui Node Red, apakah aman ?

 



Node red pada dasarnya ditujukan pada penggunaan kontrol internal dari suatu sistem dimana jaringan komputernya cukup berupa intranet saja. Ini mungkin terlihat tidak menarik dijaman serba IOT namun dari banyak kejadian penyusupan hacker ke dalam kontrol berbasis internet akan sangat berbahaya. Ingat kejadian ini ?




Wah berbahaya juga ya? Jadi yang aman apa ya ? Security dan kecepatan serta kenyamanan akses juga menjadi pertimbangan dimana keduanya saling berbanding terbalik, mau cepat ya ujungnya tidak bisa terlalu ketat tingkat keamanannya. 


Namun kali ini saya tidak akan terlalu jauh membahas keamanan dari node-red karena mungkin akan melenceng jauh dari pembahasan saya di elektronika. Jadi saya akan membahas 2 cara membawa pengukuran pzem-004t  berbasis node red ( bisa dibaca sebelumnya disini ) menuju ke luar internet.


Menggunakan MQTT


Cara ini sudah pernah saya tulis beberapa tahun lalu, jadi jika ingin mempelajarinya secara mendasar dapat dibaca kembali disini. Setupnya pada node-red cukup sederhana namun hasilnya dapat dihandalkan.







Menggunakan VPN  ZeroTier One


Cara ini cukup beresiko karena meminjam jaringan orang lain sebagai VPN nya walau dari iklannya ZeroTier dibilang akan aman-aman saja. Namun untuk skala belajar di sekolah atau kampus mungkin ini menjadi solusinya. Jadi setelah kamu mendaftarkan akun di Zerotier.com dan membuat networknya, maka dapat menginstall softwarenya di node manapun dan yg terpenting pada PC tempat menginstall Node Red. Jadi semua PC, smartphone android dan linux sekalipun dapat dibuat menjadi 1 jaringan VPN, walau menggunakan jaringan seluler atau dibelakang wifi sekalipun.










Setelah terkoneksi antar network zerotier dengan node PC dan Smartphone android seperti contoh gambar diatas, maka dapat dilakukan pengetesan dengan ping antara node yang terhubung.





Nah jika sudah terhubung antar node ini maka resmilah hubungan yang  "terlarang" antara pzem-nodered-internet dalam melakukan penghitungan daya pada suatu sistem kelistrikan arus AC. Alamat web UI node red yg biasanya http://localhost:1880/ui kini dapat diakses dari jaringan vpn zero tier one dengan alamat http://ip pc node red :1880/ui







Share:

Kamis, 02 Maret 2023

PZEM-004T : Menghubungkan ke grafik PC melalui Node-Red

 


Sebelum melanjutkan praktek pzem ke pc dibawah ini, ada baiknya membaca terlebih dahulu tulisan saya terdahulu mengenai node-red dan modbus, sehingga lebih mudah memahaminya. Saya tidak akan mengulang kembali cara instalasi node red pada pc berbasis windows maupun linux, namun langsung mengingatkan agar jangan lupa menginstall package pada palletes atau npm node js yang berhubungan dengan komunikasi modbus.




Seperti pada pembahasan pzem-004T sebelumnya pada bagian 1 dan bagian 2, untuk membaca tegangan pada pengukuran energi menggunakan pzem-004T adalah dengan akses pembacaan pada alamat 0x0000. Dan dengan menggunakan node-red ini menjadi cukup mudah dilakukan, yaitu menggunakan console debug seperti gambar dibawah ini :




Dan jika perkabelan pada pzem vs usb to serial benar maka pada console debug akan muncul output tegangan.



 

Selanjutnya kita pun dapat merubah parameter pembacaan dengan menampilkan ke semua data yang bisa diperoleh pada Pzem-004T.




Pada gambar diatas dapat dilihat dengan mudahnya dapat mengambil data pengukuran pzem dan kesemuanya dalam satu array yang urut. Jadi jika disandingkan dengan pengukuran dari software bawaan pzem, maka gambarnya sperti ini.




Selanjutnya dengan sedikit pemrograman maka array tadi bisa dipecah dan ditampilkan pada grafik html atau web. Untuk memulainya ada baiknya dibaca dulu pembahas penulisan grafik web UI disini.

Dan hasilnya bisa dilihat seperti berikut  pada alamat browser http://localhost:1880/ui .








Script pada function  untuk merubah array modbus menjadi nilai tegangan seperti ini :



Jadi dengan kreatifitas yang tidak terbatas pada node-red maka akan sangat mudah membuat Man Machine Interface berbasis web ke perangkat sensor maupun aktuator berbasis modbus.

 

Share:

Kontak Penulis



12179018.png (60×60)
+628155737755

Mail : ahocool@gmail.com

Site View

Categories

555 (8) 7 segmen (3) adc (4) amplifier (2) analog (19) android (12) antares (11) arduino (27) artikel (11) attiny (3) attiny2313 (19) audio (5) baterai (5) blog (1) bluetooth (1) chatgpt (2) cmos (2) crypto (2) dasar (46) digital (11) dimmer (5) display (3) esp8266 (26) euro2020 (13) gcc (1) gsm (1) iklan (1) infrared (2) Input Output (3) iot (74) jam (7) jualan (12) kereta api (1) keyboard (1) keypad (3) kios pulsa (2) kit (6) komponen (17) komputer (3) komunikasi (1) kontrol (8) lain-lain (8) lcd (2) led (14) led matrix (6) line tracer (1) lm35 (1) lora (11) lorawan (2) MATV (1) memory (1) metal detector (4) microcontroller (70) micropython (6) mikrokontroler (1) mikrokontroller (14) mikrotik (5) modbus (9) mqtt (3) ninmedia (5) ntp (1) paket belajar (19) palang pintu otomatis (1) parabola (88) pcb (2) power (1) praktek (2) project (33) proyek (1) python (8) radio (28) raspberry pi (9) remote (1) revisi (1) rfid (1) robot (1) rpm (2) rs232 (1) script break down (3) sdcard (3) sensor (2) sharing (3) signage (1) sinyal (1) sms (6) software (18) solar (1) solusi (1) tachometer (2) technology (1) teknologi (2) telegram (2) telepon (9) televisi (167) television (28) telkomiot (5) transistor (2) troubleshoot (3) tulisan (94) tutorial (108) tv digital (6) tvri (2) vu meter (2) vumeter (2) wav player (3) wayang (1) wifi (3) yolo (7)

Arsip Blog

Diskusi


kaskus
Forum Hobby Elektronika