Ads

Rabu, 18 Januari 2023

Kode Matlab mencari akar dengan metode Bisection

Berikut ini adalah contoh kode Matlab untuk mencari akar dari suatu persamaan menggunakan metode bisection:

% Define function
f = @(x) x^3 - x^2 + 2;

% Set initial bracket [a, b]
a = 0;
b = 1;

% Set tolerance
tol = 1e-6;

% Set maximum number of iterations
maxIter = 1000;

% Initialize variables
fa = f(a);
fb = f(b);

% Check if initial bracket is valid
if fa*fb > 0
    error('Initial bracket is not valid')
end

% Iterate
for i = 1:maxIter
    c = (a+b)/2;
    fc = f(c);
    if fc == 0 || (b-a)/2 < tol
        break
    end
    if fa*fc < 0
        b = c;
        fb = fc;
    else
        a = c;
        fa = fc;
    end
end

% Print result
fprintf('Root: %f\n', c)
fprintf('Number of iterations: %d\n', i)

Kode diatas mencari akar dari persamaan x^3 - x^2 + 2 . Anda dapat mengganti fungsi f dengan fungsi yang Anda inginkan dan juga melakukan modifikasi pada variabel-variabel yang diperlukan.

Sabtu, 14 Januari 2023

Program atau Code Arduino untuk Kalman Filter

Filter Kalman adalah algoritme matematis yang menggunakan serangkaian pengukuran yang diamati dari waktu ke waktu, mengandung noise (variasi acak) dan ketidakakuratan lainnya, serta menghasilkan perkiraan variabel yang tidak diketahui yang cenderung lebih tepat daripada yang didasarkan pada pengukuran tunggal saja. 

Berikut adalah contoh implementasi filter Kalman sederhana di Arduino:

// Declare variables for the sensor, the filter, and the state
float sensorValue;
float filteredValue;
float state;
float processNoise;
float measurementNoise;
float kalmanGain;

void setup() {
  // Initialize the serial communication
  Serial.begin(9600);
  // Initialize the state and filtered value
  state = 0;
  filteredValue = 0;
  // Set the process noise and measurement noise
  processNoise = 0.01;
  measurementNoise = 0.1;
}

void loop() {
  // Read the sensor value
  sensorValue = analogRead(A0);
  // Predict the next state
  state = state;
  // Calculate the Kalman gain
  kalmanGain = processNoise / (processNoise + measurementNoise);
  // Update the state
  state = state + kalmanGain * (sensorValue - state);
  // Update the filtered value
  filteredValue = state;
  // Print the filtered value to the serial monitor
  Serial.print("Filtered value: ");
  Serial.println(filteredValue);
  // Wait for a short period before taking the next reading
  delay(100);
}






Sabtu, 29 Oktober 2022

Review Avanza Des 2014 sampai saat ini Okt 2022

Kalau dihitung sejak beli berarti sudah 8 tahun naik onta jaman ini yang berupa Avanza tipe G 1.3 manual, kendaraan dimakan usia pergantian yang cukup signifikan adalah penggantian kampas kopling satu set dengan mataharinya. Pergantian kopling itu terjadi karena waktu itu pola ngerem yang tidak benar (rem dan kopling sering bareng) apalagi sering dipakai wira wiri jalur Purwokerto, Wonosobo, Kopeng, trobosan ke Salatiga Tengaran. 

Dan sekarang sejak pergantian kampas kopling awal, pernah seperti bunyi njegleg handrem karena parkir lama dan sekarang saatnya ganti MASTER REM  ditanggal 20 Okt 2022, total ongkos dan master rem Rp 2.858.535 sudah termasuk pajak 11% di Nasmoco Purwokerto. 

Sempat perkiraan awal apakah kampas kopling aus lagi, karena kerasa mobil berat, kopling seperti telat tarikannya, apalagi kalau sudah jalan 30menitan lebih akan tambah kerasa sekali, sampai pernah bau kampas rem hangus, roda dipegang panas dan ternyata kerusakannya pada rem yang gancet tersebut.

Penampalan master rem yang rusak foto aslinya sebagai berikut, dan diganti yang isinya hampir sama. Kerdus coklat tulisan Toyota, Lexus.











Catatan dari awal:

1. Ganti AKI -+ 5 th

2. Ganti Kampas kopling dan mataharI -+ 4 th

3. Gantu Master Rem -+ 8th

Untuk perawatan rutin tidak saya  catat yaitu busi, wiper, oli, filter oli, dsb.


Jumat, 02 September 2022

Transkrip dari isi content youtube Prof Muji tentang "Tips publikasi jurnal internasional dan jurnal nasional Sinta 1-2 (urutan menulis yang benar)"

Traskripsi tulisan bebas dari isi youtube nya Prof. Muji tentang tips publikasi jurnal internasional..., saya tulis ulang agar mudah dibaca langsung. Sumber aslinya dapat dilihat  di sini https://youtu.be/RrMzunRT0Dw

Bagaimana menyusun sebuah manuskrip atau artikel hasil penelitian yang kalian pada saat kita menyusun manuskrip memang urutannya adalah dari: 

  1. JUDUL 
  2. ABSTRAK 
  3. PENDAHULUAN 
  4. METODE 
  5. HASIL 
  6. KESIMPULAN 
  7. REFERENSI 

Namun pada kenyataannya pada saat manuskrip kita dikirimkan ke reviewer oleh editor, editor membaca BUKAN dari urutan itu. 

Mereka ingin mencari yang disebut dengan: 

  1. NOVELTY: di mana letak kebaruan dari penelitian yang kita tulis 
  2. KONTRIBUSI: apa kontrobusi riset ini terhadap pengembangan ilmu pengetahuan,
  3. PRESENTASI, bagaimana paper itu keseluruhan disajikan dan diinginkan oleh editor, reviewer, pembaca yang lebih luas.


Sebelum menyusun manuskrip harus sudah memiliki: 

1. HASIL PENELITIAN bentuknya boleh dalam bentuk gambar, boleh dalam bentuk tabel 
     atau dalam bentuk deskripsi klaim hasil penelitian, temuan terpenting dari penelitian itu 
     disebut hasil penelitian
2. PEMBAHASAN setelah didapatkan hasil, harus melanjutkannya dengan membahas hasil itu
     apa artinya semua itu, pembahasan yang baik dicirikan dengan hadirnya cerita baru dan             mendialogkan dengan hasil-hasil penelitian sebelumnya di mana LETAK KEMAJUAN dari
     riset kita. 
3. KESIMPULAN jadi setelah hasil, dibahas, lalu disimpulkan. Apa hal yang paling penting
      dari temuan penelitian itu dan implikasinya bagi pengembangan ilmu pengetahuan.
4. Tulis METODE, tulis metode, jadi hasil yang tadi didapat berupa gambar, tabel atau klaim
     itu, diperoleh dengan cara seperti apa? apa yang dilakukan untuk mendapatkan hasil tsb. 
5. Buat PENDAHULUAN:  Pendahuluan yang baik itu isinya adalah: 

  1. apa masalahnya, 
  2. apa yang sudah dilakukan oleh peneliti-peneliti lain, 
  3. apa yang luput dari perhatian peneliti-peneliti lain, apa gagasan kita, dan
  4. apa yang ingin dicapai dari pekerjaan ini (apa yang diinginkan dari penelitian ini) 

6. tulis ABSTRAK, Abstrak adalah etalase di depan yang akan dibaca orang pertama kali 
    setelah judul.
7. JUDUL: judul yang bagus ringkas lugas dan mencerminkan isi artikel 
8.  cek dan Ricek REFERENSInya.
9.  buat KNOWLEDGEMENT: Berikan pengakuan riset ini dari mana pembiayaannya atau
     jika riset ini  tidak dibiayai oleh lembaga riset pastikan ada klaim disitu bahwa kita tidak
      berdiri pada satu lembaga bisnis, tetapi murni untuk mengembangkan ilmu.




 GAMBAR BIDANG PUBLIKASI DALAM TIGA DIMENSI.

============================================================

Sebutkan berbagai diagram cartesius yang ada sumbu y dan sumbu z dan masing-masing sumbu itu memiliki skala 0 sampai 10, maka sebenarnya manuscript paper yang dikirim ke jurnal editornya akan melihat dan hanya server atau manusia yang memiliki koordinat 8,8,8 yang ada berada di accepted area.

Sumber: https://youtu.be/RrMzunRT0Dw

Apa artinya:

  1. kita lihat dari sumbu x Novelty nya tinggi 
  2. kita lihat dari sumbu z kontribusinya nyata dan 
  3. kita lihat dari sumbu y artikel dipresentasikan atau ditulis dengan baik 

Jadi kalau tiga karakteristik sebuah manuskrip itu bisa dipenuhi tentu artikel atau manuscript Bapak Ibu yang dikirim ke sebuah jurnal mudah diterima. 

Ingat syaratnya 3 semuanya harus baik yaitu novelty, kontribusi dan presentasi secara keseluruhan

TIPS BAGAIMANA MENYUSUN ARTIKEL YANG AKUNTABEL, SEMUANYA ADA 10 SEBAGAI BERIKUT:

1. TAMPILKAN HASIL atau temuan penelitian dalam bentuk gambar, tabel atau deskripsi hasil, nah ini penting , Saya mengulangi lagi karena yang disebut research tujuannya adalah untuk mencari sesuatu atau untuk menemukan lagi dan hasilnya adalah temuan baru, boleh disebutkan dalam GAMBAR, boleh ditampilkan dalam TABEL, atau dalam bentuk DESKRIPSI yang lain, KLAIM misalnya, klaim temuan.

2. PEMBAHASAN, apa artinya, berikan arti temuan tersebut, bahas secara mendalam dan komparasikan temuan tersebut dengan temuan periset-periset sebelumnya. Apakah sudah menunjukkan kemajuan, jika belum maka kita harus berusaha kembali untuk memberikan arti temuan tersebut sampai sebuah pembahasan itu memuat sebuah cerita baru yang berisi argumen-argumen baru dan  teruji, tervalidasi kebenarannya. 

3. buat KESIMPULAN sebuah riset atau sebuah manuskrip, apa kontribusinya pada pengembangan ilmu pengetahuan, lalu dicek apakah tujuan studinya ini sudah terpenuhi atau belum, jika belum harus ditulis ulang sampai disimpulan menjawab tujuan penelitiannya. 

4. Tuliskan METODE penelitiannya secara lengkap. Bagaimana cara atau langkah-langkah atau Upaya atau deskripsi yang menggambarkan secara utuh,  bagaimana hasil penelitian itu diperoleh.  Dan pastikan dapat diulang oleh orang lain. Setelah itu cek dan ricek,  apakah betul bawah metode yang dituliskan itu benar-benar bisa menjamin bahwa hasil yang diperoleh dari metode yang telah dituliskan. 

5. buat PENDAHULUAN yang mengantarkan pembaca untuk sampai pada kesimpulan riset yang kita tuliskan.  

PENDAHULUAN YANG BAIK setidaknya berisi: 

  1. Apa masalahnya, harus jelas dan disampaikan diawal masalah yang ingin diselesaikan dalam riset ini 
  2. Apa yang sudah dilakukan oleh peneliti-peneliti lain untuk mengatasi masalah tersebut. 
  3. Apa yang luput dari perhatian peneliti-peneliti tersebut, pasti ada salah satu atau dua yang luput, atau potensi apa yang tersedia dan belum tergali. 
  4. Dilanjutkan dengan apa gagasan kita atau ide kita untuk menutupi sesuatu yang kosong, ada yang luput dari perhatian oleh peneliti-penelitin lain tsb.
  5. Ditutup dengan TUJUAN RISET,  apa yang ingin dicapai dari pekerjaan ini 

6. buat ABSTRAK, abstrak merupakan brief summary tentang tujuan penelitian, metode, hasil dan simpulan atau implikasi riset. Kemudian pilih kata-kata kunci yang sesuai yang mewakili dari temuan-temuan riset, kuncinya adalah kata kunci itu harus yang bisa dicari oleh atau mudah dicari oleh mesin pencari (searchable).

7. BUAT JUDUL yang menarik yang cantik dan mewakili temuan riset. Boleh membuat judul dalam kalimat tanya, intinya bagaimana kita meramu judul itu supaya orang tertarik dan membaca penelitian kita. 

8. pastikan bapak-ibu cek dan Ricek sitasi dan DAFTAR REFERENSI, sekarang dengan hadirnya mesin reference manager seperti mendeley, endnote, citero, dll  kesalahan dalam penulisan sitasi dan referensi itu bisa dikurangi. 

9. buat KNOWLEDGEMENT, apa artinya, bapak dan ibu sekalian jangan menyepelekan knowledgment, karena sangat penting, dapat digunakan untuk memperkuat paper kita,  kalau riset kita dibiayai oleh lembaga riset yang bereputasi maka bagi editor membacanya begini “Oh berarti riset ini dari Proposalnya sudah diseleksi, diawasi selama melakukan pekerjaannya, dan dimonitoring dan dievaluasi untuk penjaminan mutu hasilnya. 

10. TULIS PAPER SESUAI GUIDELINE FOR AUTHORS  buat surat lamaran atau cover later, dan submit papernya. 

Lalu Bergegaslah untuk melanjutkan riset lainnya.



Minggu, 07 Agustus 2022

Contoh Coding LPF di Arduino

Contoh implementasi program LPF yang berjalan di Arduino.  

UNTUK VIDEONYA ADA DI SINI https://youtu.be/qyxed5LIp6g

Rangkaiannya:


 

 








 

//===============================================//
// IMPLEMENTASI LPF (LOW PASS FILTER)            //   
// DI ARDUINO, UNTUK FILTER DATA DARI            //
// SENSOR SUHU, AGAR DATA LEBIH HALUS            //
// Diprogram oleh: ARIF JOHAR TAUFIQ             //
//                 (arifjt@gmail.com)            //
//                 www.youtube.com/@ArifJTaufiq  //
// Output dapat dilihat lewat SERIAL MONITOR     //
// Output dapat dilihat lewat SERIAL PLOTTER     //
//===============================================//
float AktualTemp;
float AktualTemp_1;   
float tempSet;
float Awal;
float tempC1;
float sensorSuhu = A0;                  //sensor suhu IC LM35
int Ts= 10;                             //T sampling 10 mS
void setup()
{ Serial.begin(9600);                   
  pinMode(sensorSuhu, INPUT);
  float Awal = analogRead(sensorSuhu);// suhu awal
  AktualTemp_1 = (5.0*Awal*100)/1024; / konv teg analog ke celcius
  Serial.println("Suhu Suhu_LPF");
}
void loop()
{       
    float Baca = analogRead(sensorSuhu);//baca data dari sensor
    tempC1 = (5.0*Baca*100)/1024;   //konversi teg analog ke suhu
    
    //=========ini LPF DIGITAL ==================
    AktualTemp=(0.97*AktualTemp_1)+(0.03*tempC1);
    //=========ini  END LPF======================
         
    Serial.print(tempC1,1);             //plotter-1
    Serial.print(" ");                  //chr jeda   
    Serial.print(AktualTemp,1);         //plotter-2
    Serial.println(" ");
    AktualTemp_1=AktualTemp;
    delay(Ts);
}

Tampilan hasil LPF, garis warna biru data suhu belum di filter, garis warna merah data suhu setelah difilter.

Tampilan foto laptop serial port









Tampilan capture di monitor laptop