On_Off_Controller_Basic_denganKit_iTCLab.pdf

BasukiRahmat56 48 views 53 slides Aug 01, 2024
Slide 1
Slide 1 of 53
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41
Slide 42
42
Slide 43
43
Slide 44
44
Slide 45
45
Slide 46
46
Slide 47
47
Slide 48
48
Slide 49
49
Slide 50
50
Slide 51
51
Slide 52
52
Slide 53
53

About This Presentation

Kit Internet of Things (IoT)
iTCLab
Internet-Based Temperature Control Lab


Slide Content

On/Off Controller
Basic denganKit
iTCLab
Dr.Basuki Rahmat, S.Si,MT
[email protected]
081357938303
Internet of Things (IoT) Programming Workshop 2022 Series

Agenda
Internet of Things (IoT)
MengenalKit iTCLab
PemrogramanIoTuntukOn/Off
Controller Basic
Praktek

Internet of Things (IoT) adalah
area yang muncul di mana milyaran
objek pintar saling berhubungan
satu sama lain menggunakan
internet untuk berbagi data dan
sumberdaya
(Chahal, Kumar and Batra,2020)
Internet of Things (IoT) IoT

ArsitekturIoT
•Application Layer
Layanan keuser
Komunikasi denganmiddleware
Antarmuka user akseslayanan
•Middleware Layer
konektivitas dan interoperabilitas dalam ekosistem IoT.
•Network Layer
Mendukung jaringan dan transfer data antar simpul.
Protokol komunikasi yang diperlukan untuk pertukaran
data dalam ekosistemIoT
•Physical Layer
Mengkarakterisasi kemampuan penginderaandan
kontrol dari sistemIoT
Berupa simpul fisik seperti sensor dan aktuator yang
merasakan lingkungan dan berinteraksi dengannya
dalam menanggapi perubahan atau permintaanuser
(Ravidas et al.,2019)

•Smart Home(sistem keamanan rumah berbasis internet,dapat
mengetahui keadaan rumah serta mengontrol peralatan rumah
tanggamelaluijaringaninternet).
•SmartFarming(sistempertaniancerdasberbasisinternet,untuk
pemantauandanpengendaliankualitasairdan tanah pertanian
sertapertumbuhantanamanmelaluijaringaninternet).
•Internetindustry(pemantauandanpengendalianperalatan
sertaprosesdiindustri)
•Kesehatan(pemantauankondisikesehatanseseorang).
•Transportasi(majemendaninformasilalulintas).
Beberapa Contoh AplikasiIoT

SistemIoT
Sistem dasar dari IoT,yaitu:
1.Hardware/fisik(Things).
2.Koneksiinternet.
3.Cloud data center sebagai
tempat untuk menyimpan atau
menjalankanaplikasinya.

Yang dibutuhkan
Application
Bisa menggunakan
IoT MQTT Paneldi
HPAndroid
CloudIoT
hivemq.com
Device
KitiTCLab

Kit InternetofThings(IoT)
iTCLab
Internet-Based Temperature Control Lab
https://shopee.co.id/product/78709625/11589970517/
MengenalKit iTCLab

Overview
MotivasiiTCLab
ApaituTCLab?
BagaimanadenganiTCLab?
DariKampusBelaNegarake
Level NasionaldanInternasional
denganKit iTCLab?
Dari Indonesia keLevel Dunia?
Kit IoT-iTCLab

Overview
TerinspirasiTCLabProdukBYU
MiniaturSistemKendalidalamSaku
PaketPembelajaranIoTPraktis
PengenalanSistemIoT
PemrogramanIoT
PraktekSistemKendaliBerbasisIoT
ProdukKampusBelaNegaraMendunia
MOTIVASIiTCLab

Overview APAITUTCLab
http://apmonitor.com/pdc/index.php/Main/ArduinoTemperatureControl

Overview APAITUTCLab
TemperatureControlLab
The PID TCLab and MPC
TCLabuse the same
hardware with an Arduino
Leonardo, TCLab shield, 2A
power supply, 20AWG power
cable, and USB
communicationcable.

Overview APAITUTCLab
Over7000lab kits have
been produced for
destinations around the
worldtoindividuals,
companies, and
universities. They are used
in courses such as Begin
Python,Process
Dynamicsand Control,
andCyber-Physical
Optimization with
MachineLearning

Sensor
Actuator
Controller
GambaranSistemTCLab
USBSerialConnection
Temperature1
Digital Pin 9
Temperature2
AnalogPin2
LED
AnalogPin0
Heater 2
Heater1
DigitalPin5
DigitalPin3

Sensors:2Thermistors,-40˚C–150˚C
Actuators:2TransistorHeaters
1 2
Indicator:LED 2Transistor
HeatSinks
GambaranSistemTCLab

2014:Bread BoardedLab 2017:PCBPrintedandAssembled

PerkembanganTCLab

HowWeTeachProcess Control:
2015Survey Results
Silverstein, D.L., Vigeant, M.A.,
Staehle,M.
Belajar DinamikadanKontrolsertaPemrogramandenganTCLab

BelajarDinamikadanPemrogramandenganTCLab

Belajar KontroldanPemrogramandenganTCLab

https://apmonitor.com/heat.htm BYU, Notre Dame, Iowa StateUnivAIChENov2019,Orlando, Florida
14
MATLABInterface PythonInterface
tclab;%load TCLab
disp('Heaters')
h1(50);h2(50);
pause(5);
h1(0);h2(0);
disp('FlashLED') print(“Flash LED”)
led(1) lab.LED(100)
pause(2); time.sleep(2)
led(0) lab.LED(0)
disp('Temperatures')
disp(T1C())
disp(T2C())
importtclab
importtime
lab =tclab.TCLab()#Connect
print(“Heaters”)
lab.Q1(50);lab.Q2(50);
time.sleep(5)
lab.Q1(0); lab.Q2(0);
print(“Temperatures”)
print(lab.T1)
print(lab.T2)
close all;clear all;clc

MedicalAutomation PeopleTransportation ProductTransportation
OilandGasIndustry
NewTopics:Data Science,Analytics, MachineLearning,Cybersecurity, Digitalization
GambaranPenerapanSistemKendali diDuniaNyata

Conventional FeedbackControl
PAST FUTURE
ModelPredictive Control
k
Driving WhileLookinginReverse
(Feedback)
DrivingWhileLookingForward
(Predictive or Feedforward)
GambaranPenerapanSistemKendali diDuniaNyata

Model Predictive Control
GambaranSistemTCLab

Machine Learning with Model Predictive Control
GambaranSistemTCLab

GambaranSistemKendali
MPC
•ControllerOptions
•Open or Closed Loop
•SISOorMIMO
•On/Off Control
•PIDFeedbackControl
•FeedforwardTrim
•ModelPredictiveControl
•IdentificationandEstimation
•StepResponseModel
•KalmanFilter
•MovingHorizonEstimation
GambaranSistemTCLab

Questions and sion
PenggunaTCLab

RecordedSession

BAGAIMANADENGAN iTCLab

BAGAIMANADENGAN iTCLab

GambaranSistemiTCLab

GambaranSistemiTCLab

KelebihaniTCLab
TCLabPlus
BisakonekIoT
Tidakperlubeli
jauh-jauhkeBYU
Provo US, cukup
main keBNU

iTCLab Bisa digunakan untukApasaja?
BelajarIoT
BelajarDinamika
Sistem
BelajarSistemKontrol
BelajarMachine
Learning
BelajarPemrograman
ArduinodanPython

PemrogramanIoTuntuk
On/Off Controller Basic

PemrogramanIoTuntukOn/Off Controller Basic

PemrogramanIoTuntukOn/Off Controller Basic

PemrogramanIoTuntukOn/Off Controller Basic
/******************************************************
* Program : On/Off Controller Basic denganKit iTCLab
* Tim io-t.net dani-ot.net
* Surabaya, 21 Maret2022
* ****************************************************/
#include <WiFi.h>
#include <PubSubClient.h>
#include <Arduino.h>
#include <analogWrite.h>
constchar* ssid= "wifi"; // Enter your WiFiname
constchar* password = “Password"; // Enter WiFipassword
#define mqttServer"broker.hivemq.com"
#define mqttPort1883

PemrogramanIoTuntukOn/Off Controller Basic
WiFiServerserver(80);
WiFiClientespClient;
PubSubClientclient(espClient);
String Topic;
String Payload;
#define T1 34
#define T2 35
#define LED 26
#define Q1 33
#define Q2 32
float cel, cel1, degC, degC1;
constfloat batas_suhu_atas= 58;

PemrogramanIoTuntukOn/Off Controller Basic
void Q1on(){
//analogwrite(pin,period,frequency,resolusi,phase)
analogWrite(Q1, 341, 5000, 10, 0);
}
void Q1off(){
analogWrite(Q1,0);
}
void Q2on(){
//analogwrite(pin,period,frequency,resolusi,phase)
analogWrite(Q2, 341, 5000, 10, 341);
}
void Q2off(){
analogWrite(Q2,0);
}

PemrogramanIoTuntukOn/Off Controller Basic
void ledon(){
analogWrite(LED,255);
}
void ledoff(){
analogWrite(LED,0);
}
void cektemp(){
degC= analogRead(T1) * 0.322265625 ; // use for 3.3v AREF
cel= degC/10;
degC1 = analogRead(T2) * 0.322265625 ; // use for 3.3v AREF
cel1 = degC1/10;
Serial.print("Temperature: ");
Serial.print(cel); // print the temperature T1 in Celsius
Serial.print("°C");
Serial.print(" ~ "); // separator between Celsius and Fahrenheit
Serial.print(cel1); // print the temperature T2 in Celsius
Serial.println("°C");
}

PemrogramanIoTuntukOn/Off Controller Basic
void receivedCallback(char* topic, byte* payload, unsigned int length) {
/* we got '1' -> Q1_on */
if ((char)payload[0] == '1') {
Q1on();
Serial.println("Q1 On");
}
/* we got '2' -> Q1_off */
if ((char)payload[0] == '2') {
Q1off();
Serial.println("Q1 Off");
}
/* we got '3' -> Q2_on */
if ((char)payload[0] == '3') {
Q2on();
Serial.println("Q2 On");
}
/* we got '4' -> Q2_off */
if ((char)payload[0] == '4') {
Q2off();
Serial.println("Q2 Off");
}
}

PemrogramanIoTuntukOn/Off Controller Basic
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
analogWriteFrequency(5000);
analogWriteResolution(LED, 10);
analogWriteResolution(Q1, 10);
analogWriteResolution(Q2, 10);
// Connect to WiFi network
Serial.println();
Serial.println();
Serial.print("Connecting to ");
Serial.println(ssid);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.println("WiFiconnected");

PemrogramanIoTuntukOn/Off Controller Basic
// Connect to Server IoT (broker.hivemq.com)
client.setServer(mqttServer, mqttPort);
client.setCallback(receivedCallback);
while (!client.connected()) {
Serial.println("Connecting to CLoud IoT ...");
if (client.connect("iTCLab Suhu On/Off")) {
Serial.println("connected");
Serial.print("Message received: ");
} else {
Serial.print("failed with state ");
Serial.print(client.state());
delay(2000);
}
client.subscribe("heater1");
client.subscribe("heater2");
}
}

PemrogramanIoTuntukOn/Off Controller Basic
void loop() {
char suhu1[4];
char suhu2[4];
client.loop();
// put your main code here, to run repeatedly:
cektemp();
if (cel> batas_suhu_atas){
Q1off();
ledon();
}
else {
Q1on();
ledoff();
}
if (cel1 > batas_suhu_atas){
Q2off();
ledon();
}
else {
Q2on();
ledoff();
}
delay (100);

PemrogramanIoTuntukOn/Off Controller Basic
Serial.print("Temperature T1: ");
Serial.print(cel);
Serial.print(" Celcius");
Serial.println(" send to i-ot.net");
dtostrf(cel, 1, 0, suhu1);
client.publish("Suhu1",suhu1);
delay (200);
Serial.print("Temperature T2: ");
Serial.print(cel1);
Serial.print(" Celcius");
Serial.println(" send to i-ot.net");
dtostrf(cel1, 1, 0, suhu2);
client.publish("Suhu2",suhu2);
delay (200);
}

PemrogramanIoTuntukOn/Off Controller Basic

PemrogramanIoTuntukOn/Off Controller Basic

PemrogramanIoTuntukOn/Off Controller Basic

PemrogramanIoTuntukOn/Off Controller Basic

PemrogramanIoTuntukOn/Off Controller Basic

Praktek...
Tags