Proses Pengubahan Data ECG Menjadi Data Biner Penyandian Data Dengan Kode Konvolusi Penyandian Data Dengan Kode Konvolusi

Rddata akan menghasilkan data seperti pada Lampiran 1. Data pada tabel tersebut akan menjadi data penguji untuk proses penyandian.

4.1.2. Implementasi Penyandian Data ECG

Setelah data ECG dibaca dan disimpan, selanjutnya data akan disandikan ke dalam sebuah Indeks. Pada bagian ini, data ECG hasil pembacaan akan melewati beberapa proses, yaitu proses pengubahan data ECG menjadi data biner dan proses penyandian data dengan kode konvolusi. Proses penyandian akan menggunakan tiga jenis rate, yaitu rate 1 2 � , 1 3 � , dan 1 4 � yang performanya akan diuji dalam tugas akhir ini.

4.1.2.1. Proses Pengubahan Data ECG Menjadi Data Biner

Listing program berikut merupakan kode program dengan nama fungsi Convertdec2bin. Data ECG yang telah dibaca nilainya akan dibulatkan terlebih dahulu. Kemudian data hasil pembulatan dikonversi menjadi data biner dengan ukuran 12 bit. Data hasil konversi tersebut kemudian diubah ke dalam bentuk baris agar dapat masuk ke dalam penyandi. function message=Convertdec2bindata data=int16data; proses pembulatan data convertmessage=dec2bindata,12; proses konversi decimal menjadi biner dengan ukuran 12 bit message=Ecgbarisconvertmessage; data diubah menjadi bentuk baris

4.1.2.2. Penyandian Data Dengan Kode Konvolusi

Rate � � � Listing program berikut merupakan kode program pembangkit sandi konvolusi rate 1 2 � . Penyandi konvolusi rate 1 2 � menggunakan tiga register dan generator polinomial yang dipakai adalah adalah � 1 = [101] dan � 2 = [111] . Hasil dari penyandian berupa deretan data biner bertipe “double”. function [hasil1,hasil2]=Generator12isiRegister1,isiRegister2,isiRegister3 r1=isiRegister1; r2=isiRegister2; r3=isiRegister3; u1=r1+r3; u2=r1+r2+r3; h1=modu1,2; h2=modu2,2; hasil1=h1; hasil2=h2; Penyandi konvolusi dengan rate � � � digunakan untuk menyandikan data ECG yang berbetuk data biner. Satu data biner akan disandikan menjadi empat data, yang meliputi dua data sandi dan dua data paritas. Listing program berikut merupakan kode program fungsi penyandi konvolusi dengan rate � � � . function [hasil,jumlah]=Encoder12message m=message; mp=Paritasm; R1=zeros; R2=zeros; R3=zeros; h=zeros; for i=1:sizemp,2 R3=R2; R2=R1; R1=mp1,sizemp,2-i+1; [h1,h2]=Generator12R1,R2,R3; hi,1=h1; hi,2=h2; end ha=zeros; count=1; for i=1:sizeh,1 ha1,count=hi,1; count=count+1; ha1,count=hi,2; count=count+1; end jumlah=sizeha,2; hasil=ha1,1:end-4; hasilpenyandian=hasil; savefile = hasilpenyandian12.mat; savesavefile, hasilpenyandian;

4.1.2.3. Penyandian Data Dengan Kode Konvolusi

Rate � � � Listing program berikut merupakan kode program pembangkit sandi konvolusi rate 1 3 � . Penyandi konvolusi rate 1 3 � menggunakan tiga register dan generator polinomial yang dipakai adalah adalah � 1 = [101], � 2 = [111], dan � 3 = [111]. Hasil dari penyandian berupa deretan data biner bertipe “double”. function [hasil1,hasil2,hasil3]=Generator13isiRegister1,isiRegister2,isiRe gister3 r1=isiRegister1; r2=isiRegister2; r3=isiRegister3; u1=r1+r3; u2=r1+r2+r3; u3=r1+r2+r3; h1=modu1,2; h2=modu2,2; h3=modu3,2; hasil1=h1; hasil2=h2; hasil3=h3; Penyandi konvolusi dengan rate � � � digunakan untuk menyandikan satu data biner menjadi sembilan data. Sembilan data tersebut meliputi tiga data sandi dan enam data paritas. Listing program dibawah ini merupakan fungsi penyandi konvolusi dengan rate � � � . function [hasil,jumlah]=Encoder13message m=message; mp=Paritasm; R1=zeros; R2=zeros; R3=zeros; h=zeros; for i=1:sizemp,2 R3=R2; R2=R1; R1=mp1,sizemp,2-i+1; [h1,h2,h3]=Generator13R1,R2,R3; hi,1=h1; hi,2=h2; hi,3=h3; end ha=zeros; count=1; for i=1:sizeh,1 ha1,count=hi,1; count=count+1; ha1,count=hi,2; count=count+1; ha1,count=hi,3; count=count+1; end jumlah=sizeha,2; hasil=ha1,1:end-6; hasilpenyandian=hasil; savefile = hasilpenyandian13.mat; savesavefile, hasilpenyandian;

4.1.2.4. Penyandian Data Dengan Kode Konvolusi