SINAU PROGRAMMING
SINAU PROGRAMMING
  • Home
  • Source Code
  • Social
  • CONTROL
    • Internet of Think (IoT)
    • ESP
      • NodeMcu
      • Lora
      • WeMos
      • Esp 32 Dev
      • Node 32s
    • Arduino
    • Raspberry
    • Proteus
  • MATLAB
    • MATLAB PROJECT
    • PLC
      • Omron
      • Mitsubishi
      • Siemens
      • Schneider
      • ArduinoPLC
    • Arduino
    • Basic & Doc
  • Contact Us

Reading Data On ADC Arduino 




Example Project  MEAN (Rata-rata)

Mean adalah salah satu ukuran gejala pusat. Mean dapat dikatakan sebagai wakil kumpulan data. Menentukan mean dapat dilakukan dengan cara menjumlahkan seluruh nilai data, kemudian membaginya dengan banyaknya data.

Jumlah seluruh data: banyak data

atau, dapat dirumuskan dengan:
𝑥̅ = ∑ x / n

Keterangan:
𝑥̅ = rerata atau mean
n = banyaknya data
∑ x = jumlah seluruh data

Example PROGRAM MEAN

We try use Skin Sensor for Temperature with 10 samples



#include <Thermistor.h>
#include <NTC_Thermistor.h>

#define REFERENCE_RESISTANCE   8000//1300
#define NOMINAL_RESISTANCE     4015//1675
#define NOMINAL_TEMPERATURE    25
#define B_VALUE                3047//3647
#define ANALOG_RESOLUTION      1023
Thermistor* thermistor;
float cel;
const int SENSOR_PIN=A5;
void setup() {

  // open serial connection
    Serial.begin(9600);
    thermistor = new NTC_Thermistor(
   // adcFilter2.filter(SENSOR_PIN),
    SENSOR_PIN,
    REFERENCE_RESISTANCE,
    NOMINAL_RESISTANCE,
    NOMINAL_TEMPERATURE,
    B_VALUE,
    ANALOG_RESOLUTION
  );
  // define 2 rows: first named "Counter", second named "millis"
    Serial.println("CLEARDATA");
    Serial.println("LABEL,Time,Suhu,millis");
}

void loop() {
 
   for(int ul2=0;ul2<10;ul2++){
      const double celsius = thermistor->readCelsius();
     

     cel=cel+celsius ;

    }
   cel=cel/10;
 
  // simple print out of number and millis
  // output "DATA,TIME,4711,13374"
    Serial.print("DATA,TIME,");
    Serial.print(cel); Serial.print(",");
    Serial.println(millis());
    delay(1000);
}


 Access Point 

Mode Access Point memungkinkan Seseorang menggunakan ESP32 untuk membuat jaringan WiFi untuk terhubung. Ini mirip dengan berbagi koneksi WiFi yang tersedia di ponsel. Seperti halnya telepon, pengoperasian router WiFi disimulasikan: ini dikenal sebagai Soft AP (untuk Access Point WiFi “perangkat lunak”). Oleh karena itu, Anda tidak boleh mengharapkan kinerja yang sama seperti router WiFi konvensional, terutama pada mikrokontroler.


Perlu diperhatikan juga bahwa, tidak seperti berbagi koneksi telepon, ESP32 tidak terhubung ke Internet. Jadi Anda dapat menggunakan mode Access Point untuk membuat jaringan area lokal WiFi pribadi yang sepenuhnya terisolasi dari Internet.



Dalam situasi ini router bertindak sebagai Access Point dan ESP32 ditetapkan sebagai stasiun. Dalam skenario ini, Anda harus terhubung ke router Anda (jaringan lokal) untuk mengontrol ESP32.
Namun jika Anda mengatur ESP32 sebagai Access Point (hotspot), Anda dapat terhubung ke ESP32 menggunakan perangkat apa pun dengan kemampuan Wi-Fi tanpa perlu terhubung ke router Anda.

Dengan kata sederhana, ketika Anda mengatur ESP32 sebagai Access Point, Anda membuat jaringan Wi-Fi sendiri dan perangkat (stasiun) Wi-Fi terdekat dapat terhubung ke sana (seperti smartphone atau komputer Anda)

Wiring Kendali LED di Esp


Program Kendali LED Web Server


#include <WiFi.h>

// buat Access-Point
const char* ssid     = "ESP32-Access-Point";
const char* password = "123456789";

// port web server pada 80
WiFiServer server(80);

// Variable penyimpanan untuk HTTP request
String header;

// variables penyimpanan untuk output state
String output26State = "off";
String output27State = "off";

// Pin ESp-32
const int output26 = 26;
const int output27 = 27;

void setup() {
  Serial.begin(115200);
  // Initialize the output variables as outputs
  pinMode(output26, OUTPUT);
  pinMode(output27, OUTPUT);
  // Set outputs to LOW
  digitalWrite(output26, LOW);
  digitalWrite(output27, LOW);

  // Connect to Wi-Fi network with SSID and password
  Serial.print("Setting AP (Access Point)…");
  // Remove the password parameter, if you want the AP (Access Point) to be open
  WiFi.softAP(ssid, password);

  IPAddress IP = WiFi.softAPIP();
  Serial.print("AP IP address: ");
  Serial.println(IP);
 
  server.begin();
}

void loop(){
  WiFiClient client = server.available();   // mulai buka clients

  if (client) {                             // If a new client connects,
    Serial.println("New Client.");          // print a message out in the serial port
    String currentLine = "";                // make a String to hold incoming data from the client
    while (client.connected()) {            // loop while the client's connected
      if (client.available()) {             // if there's bytes to read from the client,
        char c = client.read();             // read a byte, then
        Serial.write(c);                    // print it out the serial monitor
        header += c;
        if (c == '\n') {                    // if the byte is a newline character
          // if the current line is blank, you got two newline characters in a row.
          // that's the end of the client HTTP request, so send a response:
          if (currentLine.length() == 0) {
            // HTTP headers always start with a response code (e.g. HTTP/1.1 200 OK)
            // and a content-type so the client knows what's coming, then a blank line:
            client.println("HTTP/1.1 200 OK");
            client.println("Content-type:text/html");
            client.println("Connection: close");
            client.println();
           
            // turns the GPIOs on and off
            if (header.indexOf("GET /26/on") >= 0) {
              Serial.println("GPIO 26 on");
              output26State = "on";
              digitalWrite(output26, HIGH);
            } else if (header.indexOf("GET /26/off") >= 0) {
              Serial.println("GPIO 26 off");
              output26State = "off";
              digitalWrite(output26, LOW);
            } else if (header.indexOf("GET /27/on") >= 0) {
              Serial.println("GPIO 27 on");
              output27State = "on";
              digitalWrite(output27, HIGH);
            } else if (header.indexOf("GET /27/off") >= 0) {
              Serial.println("GPIO 27 off");
              output27State = "off";
              digitalWrite(output27, LOW);
            }
           
            // Display the HTML web page
            client.println("<!DOCTYPE html><html>");
            client.println("<head><meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">");
            client.println("<link rel=\"icon\" href=\"data:,\">");
            // CSS to style the on/off buttons
            // Feel free to change the background-color and font-size attributes to fit your preferences
            client.println("<style>html { font-family: Helvetica; display: inline-block; margin: 0px auto; text-align: center;}");
            client.println(".button { background-color: #4CAF50; border: none; color: white; padding: 16px 40px;");
            client.println("text-decoration: none; font-size: 30px; margin: 2px; cursor: pointer;}");
            client.println(".button2 {background-color: #555555;}</style></head>");
           
            // Web Page Heading
            client.println("<body><h1>ESP32 Web Server</h1>");
           
            // Display current state, and ON/OFF buttons for GPIO 26  
            client.println("<p>GPIO 26 - State " + output26State + "</p>");
            // If the output26State is off, it displays the ON button      
            if (output26State=="off") {
              client.println("<p><a href=\"/26/on\"><button class=\"button\">ON</button></a></p>");
            } else {
              client.println("<p><a href=\"/26/off\"><button class=\"button button2\">OFF</button></a></p>");
            }
               
            // Display current state, and ON/OFF buttons for GPIO 27  
            client.println("<p>GPIO 27 - State " + output27State + "</p>");
            // If the output27State is off, it displays the ON button      
            if (output27State=="off") {
              client.println("<p><a href=\"/27/on\"><button class=\"button\">ON</button></a></p>");
            } else {
              client.println("<p><a href=\"/27/off\"><button class=\"button button2\">OFF</button></a></p>");
            }
            client.println("</body></html>");
           
            // The HTTP response ends with another blank line
            client.println();
            // Break out of the while loop
            break;
          } else { // if you got a newline, then clear currentLine
            currentLine = "";
          }
        } else if (c != '\r') {  // if you got anything else but a carriage return character,
          currentLine += c;      // add it to the end of the currentLine
        }
      }
    }
    // Clear the header variable
    header = "";
    // Close the connection
    client.stop();
    Serial.println("Client disconnected.");
    Serial.println("");
  }
}







 Description

Ini hampir merupakan salinan persis dari TP4056. Satu-satunya perbedaan adalah board ini memiliki IC perlindungan yang lebih baik. Pada dasarnya ia memiliki sistem perlindungan yang lebih baik.



Modul TP4056 dibuat untuk mengisi daya baterai lithium yang dapat diisi ulang menggunakan metode pengisian arus konstan/tegangan konstan (CC/CV). Selain mengisi daya baterai litium dengan aman, modul ini juga memberikan perlindungan yang diperlukan oleh baterai litium. Lihat di bawah mengenai fitur perlindungan yang disediakan modul ini.


Fitur Perlindungan

Modul ini menggunakan IC pengontrol muatan Li-Ion TP4056 dan IC perlindungan terpisah. Ada jenis modul lain di pasaran yang menggunakan TP4056 tetapi tidak memiliki sirkuit perlindungan atau IC untuk memberikan perlindungan yang diperlukan dengan baterai litium. Modul ini menggunakan IC perlindungan baterai Li-Ion TP4056 dan DW01A, yang bersama-sama memberikan fitur perlindungan berikut:


  • Kelola pengisian arus konstan ke tegangan konstan dari baterai litium yang terhubung;


  • Perlindungan pengosongan berlebih - menjaga agar baterai Anda tidak habis di bawah 2,4V, tingkat tegangan minimum yang sehat untuk baterai Anda Jika daya baterai yang terhubung telah habis di bawah 2.4V, modul akan memutus daya keluaran dari baterai hingga tegangan baterai terisi kembali. di atas 3.0V (tegangan pelepasan pelepasan berlebih), yang pada saat itu modul akan kembali memungkinkan pelepasan daya dari baterai ke beban yang terhubung. Meskipun modul memutus daya keluaran dari baterai selama situasi pengosongan berlebih, modul ini tetap memungkinkan pengisian daya baterai terjadi melalui dioda parasit dari MOSFET kontrol pelepasan (FS8205A Dual MOSFET).

  • Perlindungan overcharge - modul akan mengisi daya baterai Anda dengan aman hingga 4.2V

  • Perlindungan arus lebih dan arus pendek - modul akan memotong output dari baterai jika laju pengosongan melebihi 3A atau jika kondisi arus pendek terjadi

  • Perlindungan soft-start membatasi arus masuk


Trickle charge (rekondisi baterai) - jika level tegangan baterai yang terhubung kurang dari 2,9V, modul akan menggunakan arus trickle charge sebesar 130mA hingga tegangan baterai mencapai 2.9V, pada saat itu arus pengisian akan meningkat secara linier ke arus pengisian yang dikonfigurasi.Termasuk dua LED indikator. LED merah menunjukkan pengisian daya. LED hijau menunjukkan pengisian daya selesai.Tegangan masukan tidak boleh melebihi 5V.

CATATAN: Karena sifat dan karakteristik baterai litium-ion, saya tidak bertanggung jawab atau berkewajiban atas segala kerusakan, malfungsi, cedera, kebakaran, luka bakar, atau akibat atau akibat lain apa pun yang mungkin terjadi akibat penggunaan modul ini yang salah atau benar atau baterai, perangkat, atau item apa pun yang digunakan dengan modul ini, termasuk mengikuti atau menggunakan instruksi, panduan, atau arahan apa pun dari Addicore atau pihak lain. Dengan membeli produk ini Anda menerima produk sebelumnya.


file selengkapnya dapat diunduh disini 

Apa itu Centrifuge ?

Centrifuge adalah alat yang menggunakan motor gerak atau mesin untuk memutar sampel pada kecepatan tinggi  pada kurun waktu tertentu. fungsi dari Centrifuge adalah untuk melakukan pemisahan pada suatu larutan atau komponen zat dengan proses pengendapan sehingga terbagi menjadi dua fase yaitu supernatan dan pellet. Sampel yang ingin diendapkan dimasukkan ke dalam consumable yang disebut dengan tube dan diletakkan secara sejajar di dalam alat centrifuge. 




Sejarah Centrifuge

Kata Centrifuge diambil dari kata sentrifugasi atau sentrifugal, yaitu suatu gaya yang terjadi ketika suatu objek berputar. English militer insinyur Benjamin Robins (1707-1751) menciptakan aparatur lengan berputar untuk menentukan tarik . Pada tahun 1864,  Antonin Prandtl menemukan centrifuge susu pertama untuk memisahkan krim dari susu. Dalam pemisah sentrifugal kontinyu yang pertama kali, membuat aplikasi komersial layak.

Prinsip Centrifuge

Peralatan Centrifuge terdiri dari sebuah rotor atau tempat untuk meletakan larutan yang akan dipisahkan. Rotor ini nantinya akan berputar dengan cepat yang akan mengakibatkan larutan akan terpisah menjadi dua fase. Semakin cepat perputaran yang dilakukan, semakin banyak pula organel sel yang dapat diendapkan begitu juga sebaliknya. Jadi Prinsip kerja alat centrifuge adalah dengan memanfaatkan gaya sentrifugal. Gaya sentrifugal juga dipengaruhi oleh gaya gravitasi. Makin cepat putarannya maka semakin tinggi pula gaya yang dihasilkan.

Fungsi Centrifuge

Adapun fungsi utama dari alat centrifuge yaitu :

  1. Memisahkan pelet dengan substansi dari sampel cair, seperti cairan immiscible
  2. Memisahkan partikel atau sel darah dari while blood untuk memperoleh plasma atau serum.
  3. Memisahkan endapan protein dalam pemeriksaan kimia.
  4. Untuk mendapatkan elemen seluler berkonsentrasi tinggi dan komponen lainnya dari cairan biologi untuk pemeriksaan mikroskopik atau pemeriksaan kimia.
  5. Memisahkan komponen lipid dan komponen lainnya dari plasma/serum, dan memisahkan lipoprotein dari yang lainnya

Jenis-Jenis Centrifuge

1. General purpose centrifuge

Model ini biasaya dalam bentuk tabletop (bisa diletakkan di atas meja) yang dirancang untuk memisahkan sample urine, serum, atau cairan lain dari bahan padat yang tidak larut. Centrifuge ini biasanya berkecepatan 0-3000 rpm, dan bisa menampung sampel dari 5-100 ml.

2. Micro centrifuge

Disebut juga microfuges, memutar microtubes khusus pada kecepatan tinggi. Volume mctubes berkisar 0,5-2,0 ml.

3. Speciality centrifuge

Merupakan centrifuge yang dipakai untuk keperluan yang lebih spesifik. Seperti microhematocrit centrifuges dan blood bank centrifuges, yang dirancang untuk pemakaian spesifik di laboratorium klinik.

Blok Diagram Centrifuge


Tegangan Jala-jala PLN merupakan tegangan sumber yang nantinya disearahkan untuk mensupply seluruh rangkaian. Dalam SOP penggunaan awal mula lakukan setting kecepatan dan waktu. Setelah disetting, data pengaturan kecepatan dan waktu akan diproses oleh kontrol circuit  supaya motor dapat berputar sesuai dengan yang diinginkan. Safety circuit berfungsi sebagai pengaman pada pesawat centrifuge. Dalam safety circuit ini terdapat rangkaian switching yang menghubungkan control circuit dengan motor yang terletak pada tutup centrifuge.

Pintu centrifuge tidak akan terbuka jika motor masih berputar. Motor akan berputar saat pintu centrifuge ditutup. Selanjutnya motor akan berputar sesuai dengan kecepatan yang telah disetting selama waktu yang telah ditentukan. Perputaran motor ini akan menggerakkan tempat sampel sehingga timbul gaya centrifugal yang akan memisahkan partikel pada sampel sesuai berat molekulnya. Setelah timer habis, maka motor akan melambat dan berhenti berputar.

Cara Pemeliharaan Alat Centrifuge

  1. Memeriksa kelengkapan dan aksesoris pada centrifuge
  2. Lakukan pengecekan dan pembersihan pada seluruh bagian alat
  3. Lakukan pemeriksaan kinerja dan aspek keselamatan kerja
  4. Memberikan pelumasan pada bagian – bagian yang bergerak
  5. Melakukan pengencangan pada baut centrifuge
  6. Lakukan pengecekan fungsi dan kondisi bagian alat
  7. Melakukan kalibrasi dan pengujian kecepatan pada centrifuge
  8. apabila motor tidak berputar, maka dilakukan penggantian sikat arang 
  9. Lakukan penyetelan/adjustmen
  10. Bersihkan dari pecahan tabung, tumpahan darah, serum dan lakukan desinfeksi setiap saat
  11. Bersihkan bagian luar dan dalam setiap hari.
  12. Timer:  Lakukan pemantauan timer sesuai  penggunaan atau lakukan pemantauan setiap satu minggu sekali
  13. Kalibrasi : Mengukur kecepatan putaran dengan menggunakan tachometer terkalibrasi dan  lakukan 1 bulan sekali
  14. Braking system : Selalu mengikuti anjuran pabrik, Pengambilan tabung centrifuge   dilakukan setelah posisi putaran benar-benar berhenti.
  15. Power suply: Pengecekan kabel, steker dan stop kontak (pengecekan grounding dan kebocoran arus listrik dari kabel), steker dan stop kontak.
  16. Lakukan pengecekan terhadap motor dan minyak bila perlu.
  17. Terjadinya getaran yang tidak biasa perlu melakukan pengecekan rotor balance dan menyesuaikan rekomendasi pabrik.
  18. Pemeriksaan terhadap komponen lainnya, apabila ditemukan kerusakan atau cacat produk, maka komponen dapat diganti oleh pabrik (bila masih garansi).

Parameter Kalibrasi Centrifuge

1. Kalibrasi RPM (Rotary Per Minute)

Tachometer Mekanik adalah kabel yang lentur.

Cara kerja:

  1. Ujung kabel yang satu dikaitkan pada kemparan motor di dalam,sedangkan ujung yang lain dihubungkan denagn alat meter.
  2. Set centrifuge pada RPM yang paling sering dipakai,kemudian jalankan.
  3. Catat  RPM yang ditunjukkan oleh meter pada tachometer.

Tachometer elektrikal

Cara kerja:

  1. Letakkan bagian magnit di sekeliling coil,sehingga menimbullkan aliran listrik bila alat dijalankan.
  2. Set centrifuge pada RPM yang paling sering dipakai,kemudian jalankan.
  3. Aliran listrik yang timbul akan menggerakkan bagian meter
  4. Strobe light

Alat ini digunakan bila tachometer tidak dapat menjangkau motor.pemeriksaan dilakukan beberapa kali dan hitung rata-ratanya. Kecepatan putar/rpm masih dapat diterima bila nilai rata-rata yang diperoleh adalah ±5 % rpm yang seharusnya.

Kalibrasi Timer Centrifuge

Kalibrasi timer dapat dilakukan dengan menggunakan stopwatch.

Cara kerja:

  1. Set centrifuge pada waktu yang sering dipakai.
  2. Jalankan alat dan bersamaan dengan itu jalankan stopwatch.
  3. Pada waktu centrifuge berhenti,matikan centrifuge.
  4. Catat waktu yang ditunjukkan oleh stopwatch.

Timer masih dapat diterima bila niali rata-ratanya adalah ±10 % waktu yang sering dipakai.


Newer Posts Older Posts Home





POPULAR POSTS

  • Skema Power Supply Switching SMPS
  • Proteus 8.5 Full Version Professional
  • Serial Communication UART Raspberry Pico (SoftSerial)
  • Artificial Neural Network for Identification MATLAB
  • Cara Install Board ESP32 Ke Arduino IDE
  • Tutorial ILI9341 TFT SPI LCD touch Screen
  • Mengenal Mikrokontroler ESP32

ABOUT ME

cobabaru

Sinau Programming

SUBSCRIBE & FOLLOW

Training


Contact Form

Name

Email *

Message *

Categories

  • alkes 1
  • Android 4
  • Arduino 35
  • Basic & Doc 12
  • centrifuge 1
  • ESP32 8
  • Internet of Things (IoT) 23
  • LCD TFT SPI 2
  • MATLAB 6
  • Metode kendali 1
  • Modul Charger 1
  • Nextion 4
  • NodeMcu 8
  • oled 1
  • Pattern Recognition 2
  • Pemrograman 2
  • Perbaikan 1
  • PID 2
  • PLC HMI VTSCADA ARDUINO 3
  • PRIVACY POLICY 1
  • Proteus 11
  • Python 1
  • raspberry 5
  • Teknik Elektromedik 2
  • Thingsboard 1
  • Video 5
  • Wemos 4

sinau_programming

Sinau Programming Distributed by Sinau Programming