Ada banyak program yang dapat digunakan sebagai editor dan compiler program
mikrokontroler. Yang paling mudah dikenal ialah CodeVision AVR yang berbasis
bahasa C. Oleh karena itu pada buku ini menggunakan program tersebut selain
Bascom AVR yang jauh lebih mudah. Berikut ini contoh pemrograman dasar
mikrokontroler pada robot menggunakan kit mikrokontroler handal ST-8535 USB
Version yang mendukung pemrograman melalui USB (karena umumnya
komputer/laptop sekarang hanya memiliki port koneksi USB dan serial). Gambar
di bawah menmapilkan skematik sistem minimum mikrokontroler AVR standar
Gambar Contoh skema rangkaian sistem minimum AVR (ST-8535 USB version)
(a) (b)
Gambar Driver Motor DC 1A(1) dan 2A (b)
Sebagai contoh pertama, cobalah Anda memprogram robot line follower, yaitu
robot yang mengikuti garis menggunakan sensor garis berbasis Infra red. Sensor
terpasang pada Port C.0 dan C.1, sedangkan driver motor DC dipasang pada Port
B.0, B1. B.2 dan B.3. Blok diagram dari robot line follower sederhana dapat dilihat
pada gambar di bawah:
Mikro AVR
Sensor IR
Driver motor DC
Stop berlogika 1
Run berlogika 0
S2 Dir 1 CW/CCW Untuk arah putaran motor DC 1
CW berlogika 1
CCW berlogika 0
S3 Run 2 Sto/Run Untuk menjalankan atau mematikan motor DC 2
Stop berlogika 1
Run berlogika 0
S4 Dir 2 CW/CCW Untuk arah putaran motor DC 2
CW berlogika 1
CCW berlogika 0
HaarTraining
File xml dibuat dengan suatu training yang dikenal dengan Haar Training.
Proses training secara garis besar dapat dilihat dengan melalui bagan
pada gambar di bawah. Folder aplikasi berada secara default di Program
Files/OpenCV/bin/
Gambar Bagan Haar Training
Dataset terdiri dari 2 buah sample. Sample positif adalah gambar yang
mengandung obyek yang akan dideteksi. Jika kita menginginkan wajah
untuk dideteksi maka sample positif berisi gambar – gambar wajah.
Sample negatif adalah gambar yang tidak mengandung obyek yang
akan dideteksi. Seperti gambar pegunungan, mobil dsb. Masukkan
sample positif pada 1 direktori, misalnya positiveSample/rawdata.
Sedangkan sample negatif, dimasukkan pada /negativeSample.
Sample paling minimal 10 buah untuk 1 wajah dalam berbagai pose.
Catatan: file gambar harus file *.bmp.
Maka bila hal ini telah berhasil dijalankan maka akan muncul pada
folder /data, file vector.vec
#include "stdafx.h"
#include "cv.h"
#include "highgui.h"
#include <stdio.h>
#include "capture.h"
#include "capture.c"
#include "facedet.h"
#include "facedet.c"
#include "camshift_wrapper.h"
#include "camshift_wrapper.c"
IplImage * pVideoFrameCopy = 0;
int initAll();
void captureVideoFrame();
// main()
//
// is detected
while( 1 )
{
captureVideoFrame();
}
while( 1 )
{
captureVideoFrame();
CV_RGB(50,255,0), 2, CV_AA, 0 );
}
exitProgram(0);
int initAll()
{
if( !initCapture() ) return 0;
"/data/haarcascades/output.xml"))
return 0;
captureVideoFrame();
setVmin(60);
setSmin(50);
return 1;
closeCapture();
closeFaceDet();
releaseTracker();
exit(code);
void captureVideoFrame()
{
cvFlip( pVideoFrameCopy, 0, 0 );
pVideoFrameCopy->origin = 0;
}
Referensi : www.sourceforge.net/projects/OpenCV