TUTORIAL MEMBINA MOBILE ROBOT BLUETOOTH DEE PROJECT 1 MOBILE ROBOT

Similar documents
TUTORIAL MEMBINA MOBILE ROBOT BLUETOOTH DEE PROJECT 1 MOBILE ROBOT

MICROSOFT EXCEL. Membina Hamparan Elektronik Fungsi Hamparan Elektronik

TEKNOLOGI, GADJET & KEIBUBAPAAN

Pengenalan Sistem Maklumat Dalam Pendidikan

Semasa buku ini ditulis XAMPP mengandungi empat versi:

Panduan Guru Maker UNO/ Arduino

Panduan Menggunakan Autoresponder FreeAutobot.com

PANDUAN PENGGUNA (PENTADBIR SYSTEM/SYSTEM ADMINISTRATOR) (INFOTECH, BPPF DAN POLIS

PANDUAN PENGGUNA (PENSYARAH)

PANDUAN PENGGUNA (SUPPLIER) MAINTAIN CERTIFICATES/SUPPLIER DETAILS SUPPLIER RELATIONSHIP MANAGEMENT SUPPLY CHAIN MANAGEMENT SYSTEM (SCMS)

PANDUAN PENGGUNA (SUPPLIER) e-purchase ORDER FOR SERVICES

M2U MANUAL PENGGUNA USER MANUAL M2UNHJ. 0 P a g e BAHAGIAN SIMPANAN DAN PENGELUARAN JABATAN KHIDMAT PENDEPOSIT DAN OPERASI LEMBAGA TABUNG HAJI

CARA-CARA UNTUK MEMBUAT POSTER MELALUI PERISIAN PHOTOSHOP. Untuk membuat poster sediakan beberapa bahan seperti berikut:

PANDUAN PENGGUNA (SUPPLIER) MAINTAIN CERTIFICATES/SUPPLIER DETAILS SUPPLIER RELATIONSHIP MANAGEMENT SUPPLY CHAIN MANAGEMENT SYSTEM (SCMS)

ssk 2023 asas komunikasi dan rangkaian TOPIK 4.0 PENGALAMATAN RANGKAIAN Minggu 11

Pengguna akan diberikan Username dan Password oleh Administrator untuk login sebagai admin/conference Manager bagi conference yang akan diadakan.

Panduan Pengguna Autodesk Education Community

Manual Pengguna. PCN Online Service Fulfillment System

MANAGE COURSE RESOURCES LABEL TEXT PAGE URL BOOK FILE FOLDER IMS CONTENT PACKAGE

COMBINING TABLES. Akademi Audit Negara. CAATs ASAS ACL / 1

Visitor Management System

DOKUMEN TIDAK TERKAWAL

1. Akses untuk koperasi adalah melalui

FIRST TIME LOGIN & SELF REGISTRATION USER GUIDE LOG MASUK KALI PERTAMA & PENDAFTARAN SENDIRI PANDUAN PENGGUNA

UNIVERSITI SAINS MALAYSIA. Peperiksaan Semester Pertama Sidang Akademik 2003/2004. September/Oktober 2003

EEE 348 PENGANTAR REKABENTUK LITAR BERSEPADU

JABATAN KIMIA Kategori Arahan Kerja

Persekitaran Pengaturcaraan Arduino

Written by Mazuki Izani Thursday, 02 August :00 - Last Updated Tuesday, 03 February :54

EEE 428 SISTEM KOMPUTER

Cara Login Ke CPanel Hosting.

INSTRUCTION: This section consists of FOUR (4) structured questions. Answer ALL questions.

ICT SPM 2011 SUGGESTION ANSWER. Section A

SISTEM INTERAKTIF PROFIL PUSTAKAWAN MALAYSIA Interactive Profile System (IPS) for Malaysian Librarians

Registration of Supplier (ROS) TM Supplier Registration Renewal via SUS Portal (Pembaharuan Pendaftaran Pembekal TM melalui SUS Portal)

JABATAN KIMIA Kategori Arahan Kerja

ssk 2023 asas komunikasi dan rangkaian TOPIK 4.0 PENGALAMATAN RANGKAIAN

PART A SULIT (EKT 221) BAHAGIAN A. Answer ALL questions. Question 1. a) Briefly explain the concept of Clock Gating.

MULTIMEDIA COLLEGE JALAN GURNEY KIRI KUALA LUMPUR

Tutorial: Pengenalan kepada Virtools

Registration of Supplier (ROS) TM Supplier Registration Renewal via SUS Portal (Pembaharuan Pendaftaran Pembekal TM melalui SUS Portal)

PANDUAN PENGGUNA (SUPPLIER) SINGLE ENVELOPE TENDER

B,8 PERKHIDMATAN KREDIT DAN PERBANKAN. Pemindahan Data PROSEDUR UNIT KOMPUTER. BPKP/KlOK-117 Bilangan Semakan : 0 Tarikh : PERUBAHAN.

UNIVERSITI SAINS MALAYSIA. CST331 Principles of Parallel & Distributed Programming [Prinsip Pengaturcaraan Selari & Teragih]

ISI KANDUNGAN. Microsoft PowerPoint 2016

LANGKAH INSTALASI ireport Jasper,XAMMP Add On Tomcat & Oracle 2011

INSTRUCTION: This section consists of FOUR (4) structured questions. Answer ALL questions.

UNIVERSITI SAINS MALAYSIA

CREATING USER ID AND PASSWORD : NOTA PENTING NOTA PENTING SEBELUM MEMULAKAN PROSES CREATE USER ID & PASSWORD

...a- JEE ELEKTRONIK DIGIT II. UNlVERSlTl SAINS MALAYSIA. Peperiksaan Semester Kedua Sidang Akademik FebruarVMac 2003.

1. Threats bermaksud ancaman, atau lebih dikenali sebagai malware (malicious

ISI KANDUNGAN. Tarikh akhir kemaskini: 9 November 2016 Hakcipta Pusat Komputer, UTeM ms 2

PANDUAN PENGGUNA PORTAL

UNIVERSITI SAINS MALAYSIA. CST232 Operating Systems [Sistem Pengendalian]

Cik Sumitra Kan Fong Kuen

MULTIMEDIA COLLEGE JALAN GURNEY KIRI KUALA LUMPUR

INSTRUCTION: This section consists of TWO (2) structured questions. Answer ALL questions.

TS2963 : Pangkalan Data. Nota Makmal. Makmal 4

Information Security Management System ISO/IEC 27001:2013

Pejabat Teknologi Maklumat JOOMLA 3.4. Rahim Utah

UNIVERSITI SAINS MALAYSIA. CPT111/CPM111 Principles of Programming [Prinsip Pengaturcaraan]

REGISTRATION GUIDE MCIS CUSTOMER PORTAL. Page 1

UNIVERSITI SAINS MALAYSIA. CCS522 Advanced Data Communication & Computer Networks [Rangkaian Komputer & Komunikasi Data Lanjutan]

VIRTUAL PRIVATE NETWORK: ARCHITECTURE AND IMPLEMENTATIONS

Membina Laman Web Menggunakan Joomla! Mohd Hazmi Kasmin. Pusat Teknologi Maklumat. Universiti Tun Hussein Onn Malaysia

UNIVERSITI SAINS MALAYSIA. CST334 Network Monitoring & Security [Pengawasan & Keselamatan Rangkaian]

SKS 3124 PENDAWAIAN RANGKAIAN

INSTRUCTION: This section consists of TWO (2) short answer and structured essay questions. Answer ALL questions.

UNIVERSITI SAINS MALAYSIA. CPT344 Computer Vision & Image Processing [Penglihatan Komputer & Pemprosesan Imej]

PERKHIDMATAN KREDIT DAN PERBANKAN PROSEDUR UNIT KOMPUTER. Proses Backup ( Windows) BPKP/KlOK-118 Bilangan Semakan : Q Tarikh :

Laporan Aktiviti Pusat Internet 1 Malaysia Kg. Kuala Sungga

UNIVERSITI SAINS MALAYSIA. CMT322/CMM323 Web Engineering & Technologies [Kejuruteraan & Teknologi Web]

INSTRUCTION: This section consists of TWO (2) questions. Answer ALL questions. ARAHAN: Bahagian ini mengandungi DUA (2) soalan. Jawab SEMUA soalan.

PORTABLE ELECTRONICS QUEUE CONTROL SYSTEM WONG CHUN YUAN UNIVERSITY MALAYSIA PAHANG

MSS 318 Discrete Mathematics [Matematik Diskret]

UNIVERSITI SAINS MALAYSIA. CCS521 Advanced Distributed Systems Concepts and Design [Konsep dan Reka Bentuk Sistem Teragih Maju]

Aplikasi Permainan Pembelajaran untuk Kanak-Kanak

INSTRUCTION: This section consists of TWO (2) structured questions. Answer ALL questions.

CLOUD COMPUTING ADOPTION IN BANKING SYSTEM (UTM) IN TERMS OF CUSTOMERS PERSPECTIVES SHAHLA ASADI

Modul Asas JavaServer Pages

TINGKAP PINTAR DAN RESPONSIF UNTUK RUMAH NUR AMANINA HAZIQAH BINTI ABDUL HALIM KHAIRUL AKRAM ZAINOL ARIFFIN

UNIVERSITI SAINS MALAYSIA. CCS522 Advanced Data Communication and Computer Networks [Rangkaian Komputer dan Komunikasi Data Lanjutan]

EEE348 INTRODUCTION TO INTEGRATED CIRCUIT DESIGN (PENGANTAR REKABENTUK LITAR BERSEPADU)

INSTRUCTION: This section consists of TWO (2) questions. Answer ALL questions. ARAHAN: Bahagian ini mengandungi DUA (2) soalan. Jawab SEMUA soalan.

UNIVERSITI SAINS MALAYSIA. CST131 Computer Organisation [Organisasi Komputer]

UNIVERSITI SAINS MALAYSIA. CST332 Internet Protocols. Architecture & Routing [Protokol, Seni Bina & Penghalaan Internet]

HARDWARE/SOFTWARE SYSTEM-ON-CHIP CO-VERIFICATION PLATFORM BASED ON LOGIC-BASED ENVIRONMENT FOR APPLICATION PROGRAMMING INTERFACING TEO HONG YAP

PEMBENTANGAN ANUGERAH INOVASI. PROJEK : Sistem Prin;ng Menggunakan Kad Matriks (Konsep Topup) di PPICTP UTM Kuala Lumpur

LOW COST MP3 PLAYER USING SD CARD KHAIRIL AMRI BIN MUHAMAD UNIVERSITI TEKNIKAL MALAYSIA MELAKA

UNIVERSITI SAINS MALAYSIA. CPT103 Struktur Data & Paradigma Pengaturcaraan

APPENDIX B : TRAINING MATERIAL

IMPLEMENTATION OF UNMANNED AERIAL VEHICLE MOVING OBJECT DETECTION ALGORITHM ON INTEL ATOM EMBEDDED SYSTEM

INTEGRATION OF CUBIC MOTION AND VEHICLE DYNAMIC FOR YAW TRAJECTORY MOHD FIRDAUS BIN MAT GHANI

AN IMPROVED PACKET FORWARDING APPROACH FOR SOURCE LOCATION PRIVACY IN WIRELESS SENSORS NETWORK MOHAMMAD ALI NASSIRI ABRISHAMCHI

ISOGEOMETRIC ANALYSIS OF PLANE STRESS STRUCTURE CHUM ZHI XIAN

UNIVERSITI SAINS MALAYSIA. CMT422 Multimedia Information Systems & Management [Sistem & Pengurusan Maklumat Multimedia]

Welcome to the Future of Entertainment!

UNIVERSITI SAINS MALAYSIA. CPT211-CPM313 Programming Language Concepts & Paradigm [Konsep & Paradigma Bahasa Pengaturcaraan]

Panduan Network Connection

PERU BAHAN PERKHIDMATAN KREDIT DAN PERBANKAN ARAHAN KERJA UNIT KOMPUTER. Tatacara Proses AGM03. BPKP/KJAK-104 Bilangan Semakan : 0 Tarikh :

Transcription:

MOBILE ROBOT PENGENALAN Salah satu jenis robot yang banyak diminati oleh penggemar robot adalah mobile robot. Dari namanya kita akan tahu bahawa yang dimaksud dengan Mobile Robot adalah jenis robot yang penggeraknya menggunakan roda umpama kereta dan kebiasaanya menggunakan hanya 2 motor penggerak sahaja. Di negara kita, buat masa sekarang banyak jenis mobile robot digunakan di dalam pertandingan seperti Sumo Bot, Robot Pemain Bola, ataupun Line Follower Robot. Masing-masing jenis mobile robot berkenaan memiliki kelebihan dan kekurangan masing-masing. Untuk membina sebuah basic mobile robot. Ada beberapa perkara yang perlu diperhatikan; perkara pertama adalah pemilihan penggeraknya iaitu untuk mengerakkan sebuah mobile robot dapat digunakan 2 buah motor DC. Perkara kedua, motor DC pula perlu dikawal dengan menggunakan Motor Driver yang berperanan sebagai pemacu motor ke hadapan dan kebelakang serta Motor Driver juga boleh mengawal kelajuan motor. Manakala perkara yang ketiga adalah pemilihan microcontroller yang sesuai dimana ianya mudah didapati berserta dengan peranti input/output yang serasi, murah dan mudah di aturcara. Perkara yang terakhir adalah pemilihan bateri yang bersesuaian juga penting kerana bateri memainkan peranan dalam membekalkan sumber arus yang diperlukan bagi menggerakkan motor, jangka hayat penggunaan yang lebih lama dan dicadangkan bateri boleh dicas semula digunakan bagi menjimatkan kos pembelian bateri yang baru. Bluetooth Motor Driver Microcontroller Bateri Motor DC Rajah 1: Contoh Bluetooth Mobile Robot Selepas mengambil kira perkara-perkara di atas, bagi memenuhi kehendak silibus kursus projek 1; dimana pelajar perlu belajar kaedah menghasilkan papan PCB dari merebentuk litar, menganalisa litar dan seterusnya menghasilkan papan PCB yang berfungsi dengan perisian CAD (Proteus). JOM! Kita sama-sama belajar kaedah membina basic mobile robot ini dari A-Z dengan peralatan yang telah dikenalpasti dan akan dibekalkan kepada setiap kumpulan pelajar. Projek ini dikenali sebagai PROJEK MINI bagi pelajar yang mengambil kursus projek 1 pada semester ini. Di akhir semester nanti, semasa pameran inovasi projek pelajar semester akhir, mobile robot ini perlu disiapkan untuk sama-sama kita menyertai pertandingan Sumo Bot, Robot Pemain Bola, ataupun Line Follower Robot. 1

* Namun begitu, para pelajar masih perlu mengadakan brainstorming dengan penyelia masing-masing untuk menghasilkan satu projek inovasi pada semester akan datang. Dimana projek inovasi ini merupakan satu projek yang boleh menyelesaikan masalah masyarakat/industri di luar. Projek mini ini hanyalah merupakan latihan kemahiran pelajar dalam membina PCB Board disamping robot yang telah dihasilkan itu nanti boleh memenuhi keperluan pertandingan robot dimasa-masa akan datang. KEPERLUAN/PERKAKASAN ROBOT 1. Software Proteus 7 Rekabentuk litar & simulasi litar 2. Software Arduino Membina Papan PCB Pengaturcaraan pada Arduino Board 3. Kertas tracing paper Digunakan untuk mencetak litar PCB menggunakan laser printer 4. Papan Positive PCB Digunakan untuk menghasilkan PCB Board 5. 1 set komponen lengkap bluetooth mobile robot i. 2 Motor DC berserta badan ii. Arduino Nano berserta USB kabel iii. IC L293D (Driver motor) beserta 16 pin socket iv. 2 biji 40 pin socket v. 2 biji terminal block-2 dan sebiji terminal block-3 vi. 1 modul bluetooth vii. Bateri dan casing viii. 2 biji slide switch Mengenali nama setiap pin pada Arduino Nano membolehkan anda membuat sambungan dengan tepat dan betul. 2

MEREKABENTUK DAN MENSIMULASI ROBOT KAWALAN BLUETOOTH PERISIAN PROTEUS 7 Rekabentuk litar 1. Dengan berbantukan komputer, buka perisian Proteus 7 dan buat rekabentuk litar seperti rajah 2 di bawah dengan bantuan penyelia. Pastikan dalam library perisian proteus anda telah dimasukkan library Arduino Nano (sila rujuk pada penyelia). 2. Dapatkan setiap komponen yang tersenarai dari library proteus, selesaikan sambungan seperti rajah 2 dibawah, pastikan anda membuat label dengan betul pada setiap komponen dan DEFAULT terminal connection. DEFAULT terminal connection Rajah 2: Litar skematik asas mobile robot bluetooth dalam proteus 7 Senarai komponen yang digunakan: 3

Mensimulasi Robot 1. Buka perisian arduino dan taipkan aturcara (Sketch A) seperti di bawah. Cuba fahami setiap arahan yang digunakan di dalam aturcara tersebut. Dengan kefahaman ini anda boleh mengubahsuai pergerakan robot mengikut kehendak anda. Sketch A: int IN1 = 12; // Control pin 1 for motor right int IN2 = 11; // Control pin 2 for motor right int EN1 = 10; // Enable Pin for motor right int EN2 = 9 ; // Enable Pin for motor left int IN3 = 8; // Control pin 1 for motor left int IN4 = 7; // Control pin 2 for motor left void setup() { Serial.begin(9600); // initialize serial communication: pinmode(in1, OUTPUT); //Declare pin as OUTPUT pinmode(in2, OUTPUT); //Declare pin as OUTPUT pinmode(en1, OUTPUT); //Declare pin as OUTPUT pinmode(en2, OUTPUT); //Declare pin as OUTPUT pinmode(in3, OUTPUT); //Declare pin as OUTPUT pinmode(in4, OUTPUT); //Declare pin as OUTPUT void loop(){ forward();serial.println("forward:1saat");delay(1000); reverse();serial.println("reverse:1saat");delay(1000); turnright();serial.println("turn Right:1saat");delay(1000); turnleft();serial.println("turn Left:1saat");delay(1000); stoprobot();serial.println("robot Stop:1saat");delay(1000); spincw();serial.println("spin CW:1saat");delay(1000); spinccw();serial.println("spin CCW:1saat");delay(1000); void forward() { Serial.print("Forward"); digitalwrite(in1, HIGH); // right motor forward digitalwrite(in3, HIGH); // left motor forward digitalwrite(in4, LOW); // void reverse(){ Serial.print("Reverse"); digitalwrite(in1, LOW); // right motor reverse digitalwrite(in2, HIGH); // digitalwrite(in3, LOW); // left motor reverse digitalwrite(in4, HIGH); // void turnleft(){ Serial.print("Turn Left"); digitalwrite(in1, LOW); // right motor stop digitalwrite(in3, HIGH); // left motor forward digitalwrite(in4, LOW); // void turnright(){ Serial.print("Turn Right"); digitalwrite(in1, HIGH); // right motor forward 4

digitalwrite(in3, LOW); // left motor stop digitalwrite(in4, LOW); // void stoprobot(){ Serial.print("Stop"); analogwrite(en1, 0); // Run in full speed analogwrite(en2, 0); // Run in full speed digitalwrite(in1, LOW); // right motor stop digitalwrite(in3, LOW); // left motor stop digitalwrite(in4, LOW); // void spincw(){ Serial.print("Spin CW"); digitalwrite(in1, HIGH); // right motor forward digitalwrite(in3, LOW); // left motor reverse digitalwrite(in4, HIGH); // void spinccw(){ Serial.print("Spin CCW"); digitalwrite(in1, LOW); // right motor reverse digitalwrite(in2, HIGH); // digitalwrite(in3, HIGH); // left motor forward digitalwrite(in4, LOW); // 2. Setelah selesai aturcara (sketch) ditaip dengan teliti dan betul. Klik pada butang Verify untuk menentukan samada aturcara tersebut terdapat kesalahan atau tidak. Save As fail berkenaan di dalam folder yang sesuai. Butang Verify 3. Sekiranya aturcara (sketch) tiada kesalahan dan perisian menunjukkan Done compiling. Seterusnya anda boleh klik pada Tools>Board>Arduino Nano. Kemudian, klik Sketch>Export compiled Binary. Fail aturcara anda akan ditukarkan kepada satu lagi fail iaitu fail HEX (fail bahasa mesin) di dalam folder tempat anda Save As fail aturcara tadi. Fail HEX ini akan digunakan untuk simulasi litar dalam proteus. Done compiling. 4. Buka kembali litar skematik mobile robot dan klik kanan pada ARDUINO NANO>Edit Properties. Dalam popup Edit Component, browse fail HEX aturcara tadi dalam folder tempat anda Save As aturcara tersebut. Kemudian klik Open>OK. 5

5. Jika anda hendak melihat paparan text message ketika motor sedang berpusing, pastikan anda telah meletakkan komponen Virtual Terminal pada skematik anda. Klik pada Virtual Instrumets Mode>VIRTUAL TERMINAL. Letakkan di mana-mana tempat sesuai pada skematik anda. Tambah DEFAULT terminal pin pada RXD dan labelkan TX (arduino-tx<->virtual Terminal-RXD). Place at your schematic layout Virtual Instrument Mode 6. Seterusnya, anda boleh melihat simulasi litar mobile robot ini dengan klik pada butang Play pada belah kiri bawah. 7. Setelah butang Play tersebut di klik, maka anda dapat melihat motor DC anda akan berfungsi Forward, Reverse, Turn Left, Turn Right, Stop, Spin CW dan Spin CCW secara berterusan dalam masa 1 saat bagi setiap pergerakan. Jika motor anda tidak bergerak cuba cari mana-mana kesilapan sambungan dan label dalam litar anda. Tekan pada butang Stop untuk hentikan simulasi. 6

Membina PCB 1. Sebelum litar skematik anda dipindahkan kepada PCB layout, sila pastikan setiap komponen pada skematik anda sudah mempunyai package, anda boleh klik pada Design Explorer dan popup Physical Partlist View akan muncul, di sini anda akan dapati samada setiap komponen pada skematik anda sudah mempunyai package atau tidak pada ruangan Circuit/Package. Terdapat komponen missing/none pada ruangan Circuit/Package. Anda perlu assign package pada setiap komponen missing/none 2. Apa yang perlu anda buat adalah, klik kanan pada setiap komponen dan pilih Packing Tool. Sebagai contoh, untuk switch 2 hala, anda boleh memilih packaging:conn-sil3, kemudian klik pada ruangan A dan masukkan nombor kaki yang sepatutnya bersambung dengan pin yang ditunjukkan. Seterusnya klik Assign Package(s)>Save Package(s)>OK. 3. Anda boleh masukkan package untuk komponen lain seperti senarai berikut: 7

4. Terdapat 2 komponen yang belum lagi ada design dalam ARES iaitu arduino nano dan terminal pin 15. Anda perlu membuka perisian ARES dan membuat design seperti berikut, pastikan saiz jarak pin mengikut saiz yang ditunjukkan. Jika anda sukar membinanya, boleh Download di laman web projek : jkeprojek.weebly.com. Setelah selesai merekabentuk arduino nano dan terminal pin 15, anda perlu highlight komponen berkenaan secara berasingan dan klik kanan>make Package. Isikan maklumat New Package Name/Category dan sub-category, klik OK seperti berikut. Anda telah pun selesai membina 2 pakej yang baru dengan nama ARDNANO dan 15PIN. Boleh kembali kepada ISIS dan pilih pakej tersebut. 5. Untuk assign pin pada arduino nano, anda boleh rujuk pada rajah dibawah. Masukkan nombor kaki pada ruangan A. Untuk pin $RESET$ terdapat 2 pin pada arduino (ditulis 3,28), sama juga dengan GND (ditulis 4,29). Untuk 3V3 dan VIN pula, anda perlu klik pada Add Pin terlebih dahulu, kemudian taip nama pin berkenaan dan assign pin 17 dan 30 masing-masing. Seterusnya klik Assign Package(s)>Save Package(s)>OK. 8

6. Setelah semua package telah di assign kan, klik pada icon ARES>OK. Pilih Generic Single Layer>OK. Klik pula pada 2D Graphics Box Mode dan pilih Board Edge layer. Lukiskan petak ini pada layout anda (saiz petak boleh diubah mengikut kesesuaian komponen yang diletakkan). 7. Contoh kedudukan komponen dan saiz petak Board Edge yang boleh dijadikan panduan untuk anda. Sebelum track dibuat, klik pada Design Rule Manager>Net Classes, set Trace Style untuk POWER dan SIGNAL pada T30>OK. Design Rule Manager Klik pada Auto-router untuk membuat track 9

PCB yang telah siap di Auto-router. Pastikan kesemua kaki komponen telah bersambung iaitu tiada lagi garisan berwarna hijau kelihatan. Garisan hijau menunjukkan laluan track tidak dijumpai, anda perlu mengubah sedikit kedudukan komponen supaya track dapat dibuat untuk kesemua kaki komponen. Klik pada OUTPUT>3D Visualization untuk memaparkan bentuk litar PCB dalam 3D. 8. Seterusnya, anda boleh mencetak litar PCB yang telah siap tersebut pada tracing paper dengan bantuan penyelia. Seterusnya boleh lah menjalani proses Photolitography, Etching, tebuk lubang dan pemasangan komponen pada PCB dengan bantuan penyelia di Bengkel Projek. 9. Litar yang telah siap dipasang boleh lah diuploadkan aturcara seperti Sketch B dibawah. Sketch B: #include <SoftwareSerial.h> SoftwareSerial mybluetooth(2, 3); // RX, TX int IN1 = 13; // Control pin 1 for motor right int IN2 = 12; // Control pin 2 for motor right int EN1 = 11; // Enable Pin for motor right int EN2 = 10 ; // Enable Pin for motor left int IN3 = 9; // Control pin 1 for motor left int IN4 = 8; // Control pin 2 for motor left char state; void setup() { Serial.begin(9600); // initialize serial communication: mybluetooth.begin(9600); pinmode(in1, OUTPUT); pinmode(in2, OUTPUT); pinmode(en1, OUTPUT); pinmode(en2, OUTPUT); pinmode(in3, OUTPUT); pinmode(in4, OUTPUT); pinmode(buz, OUTPUT); 10

void loop(){ while (mybluetooth.available() > 0) { char inbyte = mybluetooth.read(); Serial.println(inByte); state=inbyte; if(state=='a') forward(); if(state=='b') reverse(); if(state=='c') turnleft(); if(state=='d') turnright(); if(state=='e') stoprobot(); if(state=='f') spincw(); if(state=='g') spinccw(); void forward() { Serial.println("Forward"); digitalwrite(in1, HIGH); // right motor forward digitalwrite(in3, HIGH); // left motor forward digitalwrite(in4, LOW); // void reverse(){ Serial.println("Reverse"); digitalwrite(in1, LOW); // right motor reverse digitalwrite(in2, HIGH); // digitalwrite(in3, LOW); // left motor reverse digitalwrite(in4, HIGH); // void turnleft(){ Serial.println("Turn Left"); digitalwrite(in1, LOW); // right motor stop digitalwrite(in3, HIGH); // left motor forward digitalwrite(in4, LOW); // void turnright(){ Serial.println("Turn Right"); digitalwrite(in1, HIGH); // right motor forward digitalwrite(in3, LOW); // left motor stop digitalwrite(in4, LOW); // void stoprobot(){ Serial.println("Stop"); analogwrite(en1, 0); // Run in full speed analogwrite(en2, 0); // Run in full speed digitalwrite(in1, LOW); // right motor stop digitalwrite(in3, LOW); // left motor stop digitalwrite(in4, LOW); // 11

void spincw(){ Serial.println("Spin CW"); digitalwrite(in1, HIGH); // right motor forward digitalwrite(in3, LOW); // left motor reverse digitalwrite(in4, HIGH); // void spinccw(){ Serial.println("Spin CCW"); digitalwrite(in1, LOW); // right motor reverse digitalwrite(in2, HIGH); // digitalwrite(in3, HIGH); // left motor forward digitalwrite(in4, LOW); // SELAMAT MENCUBA! 12