Anda di halaman 1dari 11

Python adalah bahasa pemrograman komputer, sama layaknya seperti bahasa Semrograman lain,

misalnya C, C+, Pascal, Java, PHP, Perl, dan lain-lain. Sebagai bahasa pemrograman, Python tentu
memiliki dialek, kosakata atau kata kunci (keyword), dan aturan tersendiri yang jelas berbeda dengan
bahasa pemrograman lainnya

Bahasa pemrograman Python disusun pada Desember 1989 oleh Guido Van Rossum di Centrum
Wiskunde & Informatica (CWI), sebuah pusat riset di bidang matematika dan sains, Amsterdam -
Belanda; sebagai suksesor atau pengganti dari bahasa pemrograman pendahulunya, bahasa
pemrograman ABC, yang juga dikembangkan di CWI oleh Leo Geurts, Lambert Meertens, dan Steven
Pemberton

Publikasi pertama bahasa pemrograman Python dilakukan oleh Van Rossum pada tahun 1991 dengan
label versi 0.9.0, yang kemudian disusul dengan versi 1.0 pada tahun 1994. Pada bulan April 1995, Guido
pindah dari CWI ke Corporation for National Research Initiatives (CNRI), sebuah laboratorium riset di
Reston, Virginia, Di CNRI, Guido dan tim barunya terus mengembangkan Python. Versi Python yang
dirilis oleh CNRI adalah 13 sampai 1.6, dan saat itu yang paling populer adalah versi 1.5.2. Tahun 2000,
perusahaan "dot-com" mulai semarak. Saat itu, Guido dan tim pengembang lain dari CNRI pindah
dengan membawa Python ke BeOpen.com, sebuah perusahaan startup di California yang banyak
merekrut para pengembang open source. Di bawah nauangan BeOpen.com, Guido dan tim membentuk
PythonLabs, yang akhirnya berhasil menciptakan Python 2.0. Dari BeOpen. com kemudian tim
PythonLabs direkrut oleh Digital Creations (saat ini telah berubah nama menjadi Zope Corporation),
sebuah perusahaan yang bergerak di bidang pembentukan produk open source untuk Content
Managament System (CMS). Tahun 2001, Guido dan tim memutuskan untuk lepas dari Digital Creations
dan membentuk komunitas baru dengan nama Python Software Foundation (PSF). PSF adalah organisasi
non-profit pemegang lisensi Python sejak versi 2.1 sampai saat ini.

Python banyak digunakan untuk melakukan administrasi sistem operasi dan jaringan komputer,
pengembangan aplikasi desktop maupun web, pengolahan dua (untuk data science dan machine
learning), dan pembuatan program antarmuka ke perangkat-perangkat keras dan mikrokontroler:
sebagai alternatif dari sekian banyak bahasa pemrograman yang ada,

Python 2 atau Python 3?

Sejak versi 27, Python 2 dan Python 3 dirilis secara simultan (paralel). Anda bisa lihat pada tanggal rilis
yang tertera di atas. Python 2.7 masih terus dipertahankan dan diperbaharui sebagai rilis terakhir dari
Python 2, karena sebelumnya banyak programmer Python 2 yang enggan untuk menggunakan Python 3.
Di lain sisi, Python 3 dikembangkan dengan tujuan jangka panjang, Fasilitas-fasilitas baru yang saat ini
ditambahkan ke dalam bahasa Python hanya diimplementasikan ke dalam Python 3.

Dukungan pemeliharaan dan perbaikan terhadap Python 2.7 dijadwalkan akan berakhir pada 1 Januari
2020, dan tidak akan ada Python 2.8. Karena alasan tersebut, saat ini para programmer Python 2 sudah
banyak yang beralih ke Python 3. Demikian juga untuk para pengguna yang baru mulai mempelajari
Python, sebagian besar mereka langsung memilih untuk menggunakan Python 3. Beberapa distribusi
Linux yang awalnya membungkus Python 2 dan menjadikannya sebagai interpreter default, sekarang
sudah mulai banyak yang diganti dengan Python 3.

Secara umum, para programmer banyak yang menjatuhkan pilihannya ke bahasa Python karena alasan-
alasan berikut:

Python memiliki konsep desain yang bagus dan sederhana, yang berfokus pada kemudahan dalam
penggunaan. Kode Python dirancang untuk mudah dibaca, dipelajari, digunakan ulang, dan dirawat.
Selain itu, Python juga mendukung pemrograman berorientasi objek dan pemrograman fungsional.

Python dapat meningkatkan produktivitas dan menghemat waktu bagi para programmer. Untuk
memperoleh hasil program yang sama, kode Python jauh lebih sedikit dibandingkan dengan kode yang
ditulis menggunakan bahasa-bahasa pemrograman lain seperti C, C++, Java, maupun C#.

Program yang ditulis menggunakan Python dapat dijalankan di hampir

semua sistem operasi (Unix, Linux, Windows, MacOS, dll), termasuk

untuk perangkat-perangkat mobile. Python memiliki banyak dukungan pustaka yang dikembangkan oleh
pihak ketiga, misalnya pustaka untuk pengembangan web, pengembangan

aplikasi visual (berbasis (game), dan masih banyak lagi yang lainnya. Melalui mekanisme tertentu, kode
Python dapat diintegrasikan dengan

GUI), pengembangan permainan komputer


aplikasi yang ditulis dalam bahasa pemrograman lain. Sebagai contoh, kode Python dapat dipanggil dari
kode C/C++, dan sebaliknya. Kode Python juga dapat diintegrasikan dengan Java dan lingkungan
pengembangan .NET Framework.

Python bersifat gratis atau bebas (free) dan open-source, meskipun digunakan untuk kepentingan
komersil.

RASPi

Untuk melakukan flash SD Card dengan menggunakan sistem operasi LINUX dapat dilakukan melalui
terminal. Perintah yang digunakan untuk menuliskan isi dari file image ke SD Card adalah perintah dd.
Namun hati-hati dalam menggunakan perintah tersebut, karena jika salah menggunakannya dapat
menghapus sistem operasi dan semua data yang disimpan pada drive utama di komputer. Berikut ini
langkah untuk melakukan flash SD Card:

1. Buka terminal 2. Pasang SD Card kosong ke Card Reader yang terhubung ke

komputer.

Ketik sudo fdisk -l untuk melihat daftar disk yang terdeteksi komputer 4. Kemudian cari SD Card yang
tadi dimasukkan. Pencarian lebih

mudah dilakukan berdasarkan kapasitas.

5. Sebagai catatan, perlu diingat bahwa alamat dari device adalah /dev/sdX. Huruf X disini adalah sebuah
huruf yang mengidentifikasikan device penyimpanan (drive dikomputer). Namun, beberapa sistem yang
sudah terintegrasi dengan Card Reader mungkin menggunakan format alternatif seperti

/dev/mmeblkx. 6. Gunakan perintah ed untuk berpindah ke lokasi dimana file image berada

7. Ketik sudo dd if=imagefilename.img of=/dev/sdX bs=2M pada terminal (Ganti imagefilename sesuai
dengan nama aktual dari file yang tadi telah di extract).
8. Perintah tersebut digunakan untuk menuliskan

imagefilename.img ke SD Card.

9. Langkah penulisan akan memakan waktu dan pada terminal tidak akan ditampilkan apapun sampai
dengan proses flash selesai.

Menghubungkan ke Jaringan Kabel melalui

Console

Selain menggunakan cara dengan menggunakan GUI di atas, terdapat cara lain untuk mengkonfigurasi
pengaturan jaringan pada Raspberry Pi yaitu pada mode console ataupun dengan menggunakan
terminal. Untuk memulainya ketik perintah sudo nano /etc/dhcpcd.conf pada terminal seperti pada
gambar 4.16 di bawah

ini.

Perintah di atas akan membuka nano text editor dengan menggunakan hak akses root dan membuka file
dhcpcd.conf (dynamic host configuration protocol client daemon) yang terletak di direktori /etc seperti
yang ditunjukkan pada gambar 4.17 di bawah ini.

Secara default file tersebut dikonfigurasi untuk mendapatkan informasi konfigurasi dinamik DHCP
server, namun dapat juga dikonfigurasi secara manual. Untuk mengonfigurasi file tersebut geser ke
bawah sampai dengan akhir isi file dan tambahkan konfigurasi manual seperti pada gambar 4.18 di
bawah ini:

Setelah selesai simpan file dengan menekan Ctrl+O kemudian enter. Tekan pula Ctrl+X untuk keluar dari
editor. Setelah itu, coba ping salah satu website untuk memastikan bahwa konfigurasi sudah sesuai
seperti dicontohkan pada gambar 4.19.

Sensor Ultrasonik HC-SR04


HC-SR04 adalah modul sensor ultrasonik yang dapat mengukur jarak dengan rentang dari mulai 2cm
sampai dengan 4cm, dimana akurasinya mencapai 3mm. Pada modul ini terdapat ultrasonik transmitter,
reveiver dan control circuit. Berikut ini dasar prinsip kerja dari sensor ultrasonic HC-SR04: 1.
Menggunakan IO trigger sedikitnya 10 us sinyal high.

2. Modul secara otomatis mengirimkan 8 kali 40KHz dan mendeteksi apa terdapat sinya balik atau tidak.
3. Jika terdapat sinya balik, maka durasi waktu dari output high adalah waktu dari pengiriman dan
penerimaan ultrasonik.

Jarak = (waktu sinyal high) * kecepatan suara (340m/s)/2

Tabel 13.1 menunjukkan spesifikasi dari sensor ultrasonic HC-SR04

Tabel 13.1 Spesifikasi HC-SR04

Spesifikasi

Input Tegangan

Arus

Frekuensi Kerja

Jarak Maksimum

Jarak Minimum
Sudut Pengukuran

Input Sinyal Tigger

Ouput Sinyal Echo

Dimensi

Keterangan

5V DC

15mA

40KHZ

4m

2cm

150

10us pulsa TTL

Sinyal level TTL


45*20*15mm

Gambar 13.1 memunjukkan bentuk fisik dari sensor ultrasonic HC SR04, dimana pin trigger digunakan
untuk input pulsa sedangkan pin echo digunakan untuk output pulsa.

HC-SR04

Gambar 13.1 Sensor ultrasonik HC-SR04

17.1 Motor Servo

Motor servo adalah jenis actuator elektromekanis yang tidak berputar secara kontinu seperti motor
DC/AC atau motor stepper. Motor servo digunakan untuk posisi dan memegang beberapa objek. Motor
jenis ini digunakan dimana rotasi kontinu tidak diperlukan sehingga tidak digunakan untuk
mengendalikan roda (kecuali servo ini dimodifikasi). Sebaliknya, motor servo digunakan dimana sesuatu
yang dibutuhkan pindah ke poisisi tertentu dan kemudian berhenti dan bertahan pada posisi itu. Hal
yang paling umum dari penggunaan motor servo adalah digunakan untuk posisi kemudi pesawat
terbang, kapal dan lain-lain.servo dapat digunakan secara efektif di sini karena tidak

perlu bergerak 360 derajat penuh atau tidak memerlukan rotasi terus-menerus seperti roda. Motor
servo dapat diperintahkan untuk memutar dengan sudut tertentu dan selanjutnya kemudi akan tetap
bertahan disana. Motor ini juga menggunakan mekanisme umpan balik, sehingga dapat merasakan
kesalahan dalam posisinya dan mengoreksinya, hal tersebut disebut dengan servomechanism. Jadi, jika
aliran udara memberikan tekanan pada kemudi dan terjadi defleksi/penyimpangan, maka servo akan
menerapkan kekuatan dalam arah yang berlawanan dan mencoba memperbaiki kesalahan Misal, kita
meminta motor servo untuk berada dan mengunci dirinya pada posisi 30 derajat dan kemudian kita
mencoba untuk memutar dengan tangan kita, maka servo akan berusaha keras sebaik mungkin untuk
mengatasi gaya dan menjaga servo terkunci pada sudut yang

ditentukan.
Motor servo juga digunakan untuk mengontrol kemudi mobil RC, lengan dan kaki robot. Banyak sekali
jenis servo, tetapi disini kita akan menggunakan servo jenis TowerPro SG90. Servo ini memiliki tiga pin,
yaitu pin VCC, GND dan pin sinyal

17.2 Motor Servo TowerPro SG90

Motor Servo TowerPro SG90 adalah sebuah servo kecil dengan output power yang tinggi. Motor ini
dapat berotasi sekitar 180 derajat dan bisa bekerja seperti servo standar lainnya hanya saja ukurannya
lebih kecil. Bentuk fisik dari motor servo TowerPro SG90 ditunjukkan pada gambar 17.1 di bawah ini.

Kita dapat mengendalikan pergerakan dari servo ini dengan menggunakan sinyal PWM melalui pin sinyal
motor servo SG90. Berdasarkan data dari datasheet, frekuensi pada motor servo ini adalah 50Hz dengan
kata lain periodanya sebesar 20ms. Untuk posisi 90 derajat bisa didapatkan dengan memberikan pulsa
sepanjang 1.5ms, kemudian posisi o derajat pada pulsa sepanjang 0.5ms dan untuk posisi 180 derajat
diberikan pulsa sepanjang 2.5ms. Berikut ini perhitungan untuk duty cycle berdasarkan nilai-nilai yang
didapat

sebelumnya: 1. Duty cycle untuk sudut o derajat:

0.5 duty cycle = * 100% = 2.5% 20

2. Duty cycle untuk sudut 90 derajat:

duty cycle 1.5 20 = * 100% = 7.5%

3. Duty cycle untuk sudut 180 derajat:

duty cycle = 2.5 20 * 100% = 12.5%

relay
Relay adalah saklar elektrik yang menggunakan elektromagnet untuk memindahkan saklar dari posisi off
ke posisi on. Daya yang dibutuhkan relatif kecil dari untuk mengaktifkan relay tetapi relay dapat
mengendalikan sesuatu yang membutuhkan daya lebih besar.

Terdapat beberapa jenis konfigurasi relay misalnya SPST dan SPDT yang ditunjukkan gambar 6. Single
Pole Single Throw (SPST) merupakan konfigurasi yang paling sederhana, dimana relay dengan
konfigurasi ini hanya memiliki dua kontak. Single Pole Double Throw (SPDT) memiliki tiga kontak. Kontak
biasanya diberi label Common COM), Normally Open (NO), dan Normally Close (NC). Pada Normally
Close (NC), kontak NC akan terhubung ke kontak COM

ketika coil tidak diberi daya. Pada Normally Open (NO), kontak akan terputus ketika tidak ada daya yang
diberikan pada coil. Ketika daya diberikan, maka Common (COM) akan terhubung dengan kontak NO
dan kontak NC dibiarkan mengambang (floating) [12].

SPDT

SPST

Gambar 15.1 Konfigurasi Relay SPST dan Relay SPDT (sumber:


www.physics.unlv.edu/bill/PHYS483/relay.pdf)

Pada bagian ini kita akan membuat rangkaian dan program terkait relay, di mana relay akan aktif dan
menyebabkan buzzer menyala dengan selang waktu selama 2 detik sebanyak 5 kali. Sensor PIR HC SR501
akan mendeteksi keberadaan manusia dan akan memberikan output berupa nilai HIGH dan LOW ke
Raspberry Pi. Output tersebut akan diproses didalam Raspberry Pi dan akan menentukan aktif dan
tidaknya relay tergantung dari nilai HIGH atau LOW yang sensor PIR HC-SR501 ke Raspberry Pi. diberikan

Internet of Things (IoT) dapat dideskripsikan bagaimana menghubungkan benda sehari-hari seperti
smartphone, internet TV, sensor dan aktuator ke internet dimana perangkat dihubungkan bersama yang
memungkinkan bentuk-bentuk baru komunikasi antara hal-hal tersebut dengan orang-orang, dan antara
hal-hal itu sendiri.
Transistors (bipolar transistor) terdiri atas semikonduktor berstruktur semacam roti sandwich (dua
keping roti dengan isi di tengahnya. Ada transistor PNP yang strukturnya berupa semikonduktor tipe N
(negatif) yang diapit oleh dua semikonduktor tipe P (positif). Ada pula transis tor NPN yang strukturnya
berupa semikonduktor tipe P yang diapit dua keping semikonduktor tipe N.

Istilah transistor merupakan gabungan dari dua kata "transfer-resis- tor". Hal ini karena arus yang
dikendalikan perangkat tersebut akan me lalui dua tipe bahan semikonduktor, yaitu tipe P dan N.
Lapisan dengan elektron berlebih disebut tipe N, sedangkan yang kekurangan elektron disebut tipe P.

Transistor PNP

Translator NPN

Gambar 1 Struktur transistor PNP dan transistor NPN

Transistor adalah perangkat semikonduktor yang merupakan kom ponen utama di hampir semua
perangkat elektronik. Transistor sering di katakan sebagai penemuan paling penting di abad XX.
Transistor memiliki banyak kegunaan, seperti dalam pengaturan tegangan (voltage regulator) saklar
(switching), dan penguatan sinyal (amplification).

Resistor adalah komponen elektronika yang menghambat atau memperkecil arus listrik. Ke- mampuan
reistor menghambat arus listrik disebut hambatan atau resistansi yang dinyatakan dalam satuan ohm
(dilambangkan dengan ). Jika arus lis trik dianalogikan dengan aliran air pada sebatang pipa, resistor
adalah pipa kecil yang mengurangi derasnya aliran air

A. Tipe-Tipe Resistor

Gambar 1 Resistor dalam rangkaian elektronika.


Berdasarkan nilai resistansinya, resistor dapat dibedakan menjadi resistor tetap dan resistor variabel
(resistansinya dapat diubah-ubah). Resistor juga dapat dibedakan atau dinamai berdasarkan bahan
pembuatnya, misalnya resistor karbon dan resistor keramik. Tabel berikut ini menunjukkan beberapa
tipe resistor.

Anda mungkin juga menyukai