Semua Tentang Belajar Teknologi Digital Dalam Kehidupan Sehari - Hari

  • IC Timer 555 yang Multifungsi

    IC timer 555 adalah sirkuit terpadu (chip) yang digunakan dalam berbagai pembangkit timer, pulsa dan aplikasi osilator. Komponen ini digunakan secara luas, berkat kemudahan dalam penggunaan, harga rendah dan stabilitas yang baik

  • Data Science

    Mengulik Digitalisasi data statistik dengan bantuan python untuk pemanfaatan di bidang transportasi, kesehatan, keuangan dan masih banyak lagi

  • Artificial Intelligence - Pengenalan Object

    Menghadirkan pemanfaatan AI dengan praktek-praktek yang mudah diikuti - cocok untuk mahasiswa yang mencari ide tugas akhir

  • JAM DIGITAL 6 DIGIT TANPA MICRO FULL CMOS

    Jika anda pencinta IC TTL datau CMOS maka project jam digital ini akan menunjukkan bahwa tidak ada salahnya balik kembali ke dasar elektronika digital , sebab semuanya BISA dibuat dengan teknologi jadul

  • Node Red - Kontrol Industri 4.0

    Teknologi kontrol sudah melampaui ekspektasi semua orang dan dengan kemajuan dunia elektronika, kini semakin leluasa berkreasi melalui Node Red

Jumat, 21 Maret 2025

Mengulik Prediksi Statistik : Kesalahan Regresi Linear di Rekor Lari 100m

Seperti kita sudah pahami Regresi Linear adalah metode statistik yang digunakan untuk memodelkan hubungan antara variabel dependen (misalnya, waktu rekor dunia) dan satu atau lebih variabel independen (misalnya, tahun). Tujuannya adalah untuk menemukan "garis yang paling sesuai" yang meminimalkan kesalahan antara nilai yang diprediksi dan nilai aktual.

Anda dapat menggunakan persamaan garis lurus y=mx+b, di mana:

  • y: Variabel dependen (waktu rekor dunia)
  • x: Variabel independen (tahun)
  • m: Kemiringan (laju perubahan waktu rekor dunia per tahun)
  • b: Intersep (waktu rekor dunia yang diprediksi pada tahun 0)
Perhatikan contoh berikut berupa data rekor dunia lari 100 meter pria:

YEAR
TIME (SECONDS)
1912
10.6
1921
10.4
1930
10.3
1936
10.2
1956
10.1
1960
10.0
1968
9.95
1983
9.93
1988
9.92
1991
9.86
1994
9.85
1996
9.84
1999
9.79
2005
9.77
2008
9.72
2009
9.58

 

Dari  kumpulan data di atas, kita bisa menurunkan model regresi linear sebagai berikut:

Buatlah titik-titik data pada grafik dengan tahun pada sumbu x dan waktu rekor dunia pada sumbu y. Pasang model regresi linier pada data tersebut. Ini melibatkan penghitungan kemiringan (m) dan intersep (b). Untuk mempermudah, Anda dapat menggunakan perangkat lunak seperti Excel, Python (dengan scikit-learn), atau bahkan kalkulasi pena dan kertas untuk menemukan garis yang paling sesuai.

Misalnya, dengan menggunakan alat seperti Excel atau Python, Anda mungkin menemukan:


y=−0,01x+29,5


di mana y adalah waktu rekor dunia yang diprediksi, dan x adalah tahun.


Sekarang, kita lanjutkan menggunakan model regresi linier untuk memprediksi:

Berapakah rekor dunia lari 100m pria  pada tahun 2050?
Kapan rekor dunia akan mencapai 0 detik (yang jelas tidak mungkin).


Contoh Prediksi:

Untuk tahun 2050:
y=−0,01(2050)+29,5=9,0 detik.
Untuk saat rekor mencapai 0 detik:
Pecahkan 0=−0,01x+29,5:
x=2950.


Jelas, prediksi ini tidak realistis. Seorang manusia yang berlari 100 meter dalam 0 detik melanggar hukum fisika!

Mari kita bahas mengapa model regresi linier gagal dalam konteks ini?

  • Batasan Biologis dan Fisik: Performa manusia memiliki batasan alami karena biologi, fisiologi, dan fisika. Model linier mengasumsikan peningkatan tak terbatas, yang tidak realistis.
  • Tren Nonlinier: Peningkatan rekor dunia cenderung melambat seiring waktu saat atlet mendekati batas fisik mereka. Model linier tidak dapat menangkap tren perlambatan ini.
  • Objek Luar Biasa dan Kejutan: Terkadang, ada objek luar biasa (misalnya, rekor Usain Bolt 9,58 detik pada tahun 2009). Ini dapat mendistorsi model linier dan membuatnya kurang akurat.

Untuk mengilustrasikan ini, plot residual (selisih antara nilai aktual dan nilai prediksi) dan tunjukkan bagaimana mereka meningkat seiring waktu, yang menunjukkan kerusakan model.



Model Nonlinier

Sebagai tambahan,  model nonlinier (misalnya, peluruhan logaritmik atau eksponensial) yang lebih baik menangkap tren perlambatan dalam peningkatan rekor dunia. Misalnya:

y=aln(x)+b
atau
y=aebx+c

Model-model ini memperhitungkan hasil yang semakin berkurang dan memberikan prediksi yang lebih realistis.

Lalu ada pertanyaan :

  • Mengapa regresi linier gagal memprediksi rekor dunia di masa mendatang secara akurat?
  • Faktor apa yang memengaruhi perkembangan rekor dunia (misalnya, metode pelatihan, teknologi, genetika)?
  • Dapatkah kita memprediksi kapan batas akhir kinerja manusia akan tercapai? Mengapa atau mengapa tidak?
Rangkuman:

  • Regresi linier adalah alat yang ampuh untuk memodelkan hubungan tetapi memiliki keterbatasan.
  • Data dunia nyata sering kali menunjukkan pola kompleks yang tidak dapat ditangkap oleh model linier.
  • Memahami keterbatasan ini sangat penting untuk membuat prediksi yang tepat.


Pemodelan Python :


import matplotlib.pyplot as plt
import numpy as np

# Historical data
years = [1912, 1921, 1930, 1936, 1956, 1960, 1968, 1983, 1988, 1991, 1994, 1996, 1999, 2005, 2008, 2009]
times = [10.6, 10.4, 10.3, 10.2, 10.1, 10.0, 9.95, 9.93, 9.92, 9.86, 9.85, 9.84, 9.79, 9.77, 9.72, 9.58]

# Linear regression model
m = -0.01  # Slope
b = 29.5   # Intercept

# Generate predicted values
future_years = np.linspace(1900, 3000, 10)
predicted_times = m * future_years + b

# Plot
plt.figure(figsize=(10, 6))
plt.scatter(years, times, color='blue', label='Actual World Records')
plt.plot(future_years, predicted_times, color='red', label='Linear Regression Prediction')
plt.axhline(0, color='black', linestyle='--', linewidth=1)  # Horizontal line at y=0
plt.title("Failure of Linear Regression: Men's 100m World Record")
plt.xlabel("Year")
plt.ylabel("World Record Time (seconds)")
plt.legend()
plt.grid(True)
plt.ylim(-1, 12)  # Set y-axis limits to show negative predictions
plt.show()

Terus pemodelan regresi linear lainnya yg benar kayak gimana ? Perhatikan contoh okupansi parkir berikut :


#ini coba parkir
import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression

# Step 1: Sample Data (Monthly Parking Lot Occupancy)
months = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]).reshape(-1, 1)  # Month numbers (1 = January, 12 = December)
occupancy = np.array([80, 75, 65, 70, 62, 55, 45, 52, 45, 52, 68, 72])    # Occupancy percentages

# Step 2: Fit Linear Regression Model
model = LinearRegression()
model.fit(months, occupancy)

# Extract slope (m) and intercept (b)
m = model.coef_[0]  # Slope
b = model.intercept_  # Intercept

print(f"Linear Regression Model: y = {m:.2f} * x + {b:.2f}")

# Step 3: Predict Occupancy for Next Year (Months 13 to 24)
next_year_months = np.array(range(13, 25)).reshape(-1, 1)  # Months for the next year
predicted_occupancy = model.predict(next_year_months)

# Print Predictions
for month, pred in zip(range(13, 25), predicted_occupancy):
    print(f"Month {month}: Predicted Occupancy = {pred:.2f}%")

# Step 4: Visualize Results
plt.figure(figsize=(10, 6))

# Plot Historical Data
plt.scatter(months, occupancy, color='blue', label='Historical Data')

# Plot Regression Line for Historical Data
x_range = np.array(range(1, 25)).reshape(-1, 1)  # Extend line to cover both years
y_range = model.predict(x_range)
plt.plot(x_range, y_range, color='red', label='Linear Regression Fit')

# Plot Predictions for Next Year
plt.scatter(next_year_months, predicted_occupancy, color='green', label='Next Year Predictions')

# Add Labels and Legend
plt.title("Parking Lot Occupancy Prediction")
plt.xlabel("Month Number")
plt.ylabel("Occupancy (%)")
plt.axvline(x=12.5, color='gray', linestyle='--', linewidth=1, label='End of First Year')  # Separator between years
plt.legend()
plt.grid(True)
plt.show()

Hasilnya lebih masuk akal seperti berikut :






- powered by qwen ai -
Share:

Jumat, 07 Maret 2025

Mengulik Data Transportasi Lewat Web Scraping di D4 Transportasi Unesa


 

Tidak dipungkiri lagi dunia transportasi modern berhubungan erat dengan data. Semua kemudahan yang kita dapatkan sampai hal terkecil seperti mau tahu sampai dimana si sopir gojek, sangat berhubungan dengan data yang berupa data titik GPS serta peta atau lebih umumnya dinamakan sebagai GIS yang sudah saya bahas sebelumnya disini. Pernahkah pembaca bertanya-tanya bagaimana Google Maps bisa memberi tahu kalian jalan tercepat ke sekolah atau tempat tujuan lainnya? Apa yang membuat Uber atau Gojek bisa memprediksi waktu kedatangan driver hanya dalam hitungan menit? Kenapa harga tiket pesawat atau kereta sering berubah-ubah setiap hari? Kita coba ulik dengan pembahasan sederhana.

Yang saya ingin bagikan gak muluk-muluk, karena ini hanya belajar bagaimana mendapatkan data transportasi. Semisal saya ingin mencari data transportasi lalu lintas harian di kota surabaya. Mungkin kalau dipikir cara yang paling tepat adalah menuju ke kantor dishub surabaya lalu meminta kepada pihak sana untuk mengarahkan ke PPID atau pejabat pengelola informasi dan dokumentasi,. Namun cara ini kurang canggih jika melihat hampir semua instansi mempunyai website yang mendukung undang-undang keterbukaan informasi publik alias SATU DATA INDONESIA. Dan tanpa bersusah payah saya dapat meluncur ke websitenya dishub surabaya dan data yang  saya peroleh cukup lengkap.

https://dishub.surabaya.go.id/portal/elalin/lhr



Cukup lengkap datanya dan to the point langsung keluar tabelnya dan siap dipakai untuk laporan anak mahasiswa D4 Transportasi Fakultas Vokasi Unesa Surabaya. Lalu data apalagi ya? Kita menuju ke kakaknya yaitu dishub jatim, dan ketika saya membuka websitenya terdapat portal data di : https://labdata.dishub.jatimprov.go.id/ dan kayaknya saya kurang beruntung karena ada login untuk masuk kedalamnya. Wahh repot ini urusannya, namun saya tidak kurang akal dan menemukan menu yang bisa di klik yang menampilkan data lokasi terminal atau pelabuhan dari berbagai moda transportasi di jawa timur. Kita ulik aja apakah bisa menemukan API nya ?



 

Caranya cukup dengan klik kanan pada layar websitenya, lalu pilih bagian paling bawah yaitu "inspect" dan akan muncul layar di kanan untuk chrome atau kalau pake firefox muncul di bawah, kemudian langsung aja menuju ke bagian network untuk melihat proses yang dilakukan oleh website ini ketika salah satu menu di klik. Benar saja langsung terlihat API yang dipanggil oleh halaman web ini dan bisa kita dengan mudah mengambil response atau reply nya dengan klik kanan "copy response". Untuk menjadikan datanya lebih berguna maka bisa gunakan layanan pengubah Json to table (googling ada banyak)  seperti hasil dibawah ini:



Dapet deh data alamat seluruh node moda transportasi di jawa timur baik darat laut udara lengkap dalam laporan berupa tabel pula. Lalu apakah saya mencuri? Kita kembalikan ke etika dan UU keterbukaan data, dan prinsipnya seperti ini :


Untuk memastikan tindakan Anda etis:

  • Periksa Terms of Service dan robots.txt .
  • Analisis header respons API (teknikal).
  • Pastikan data bersifat publik dan tidak sensitif.
  • Hubungi pemilik data untuk meminta izin jika ragu.
  • Gunakan data secara bertanggung jawab dan berikan atribusi.
  • Untuk data tugas akhir berikanlah sitasi pada daftar pustaka


Jika anda cukup yakin akan tindakan anda, ayo kita menuju database transportasi nasional di kementrian perhubungan https://portaldata.kemenhub.go.id/ dan mungkin yang keluar adalah error 500 (internal server error) hehehehe..maklum menterinya baru mungkin akan upgrade ke teknologi yang lebih canggih. 

Jika anda berhasil masuk, pilih menu ke bagian dataset dan ambil berbagai jenis contoh laporan dunia transportasi dan saya pilihkan : https://portaldata.kemenhub.go.id/content/dataset/522 yaitu berupa dataset yang berisikan potensi pergerakan masyarakat pada natal 2023 dan tahun baru 2024:



Yang keluar adalah laporan yang cukup lengkap namun memiliki link satu-satu. Bagaimana untuk menjadikannya satu data json atau tabel csv ? Kita manfaatkan python dalam hal ini package beatyfulsop dan mungkin juga panda sebagai pengolahan frame data. Saya sudah sediakan contoh untuk kalian ulik di : https://shorturl.at/9GgzS .



Pada intinya script diatas akan mengumpulkan link json pada website dataset kemenhub, lalu mengambil isi jsonnya kemudian diubah menjadi file csv yang secara otomatis menjadi tabel pada google colab. Sangat mudah kok (padahal saya cukup bertanya ke mesin AI untuk terlihat seperti pintar koding ..hehehe).

Dan ujung kegatelan saya terhadap data transportasi yang ada di internet adalah ketika mengulik website penyedia tiket bus redbus.com yang hasilnya saya bisa mengambil data API nya secara lengkap.


Untuk yang terakhir ini cukup saya iming-imingi gambarnya aja ya ...gak etis membagikan cara mengambil dapur orang hehehe....


Selamat belajar





 

Share:

Sabtu, 01 Maret 2025

Perkenalan Koding GIS - OSM - TomTom Traffic API di D4 Transportasi Unesa

 



Dunia per-petaan dengan tumpukan gambar data diatasnya mulai saya kenal ketika berkecimpung di dunia telekomunikasi 20 tahun yang lalu, dimana setelah proses deployment jaringan BTS-CDMA selanjutnya akan dilakukan proses adjustment atau optimasi jaringan radionya. Tidak ada cara lain yaitu dengan melakukan drive test atau pengujian keliling menggunakan alat testing ( dulu standarnya TEMS buatan Ericsson ) dan dengan bantuan teknologi GPS untuk menentukan lokasi dan peta (yg masih sederhana) maka kondisi jaringan disuatu lokasi akan tergambarkan melalui GIS. 



Kemudahan pelaporan mulai muncul ketika Google saat itu mengeluarkan layanan (yg masih berbayar) yang namanya Google Earth yang bisa ditumpangkan data hasil drivetest berformat kml. Era 2010an  google bahkan menggratiskan google earth ketika mulai memanfaatkan data penggunaan smartphone android yang disana terdapat secara default perangkat GPS dan aplikasi Google Maps. Tentunya tidak ada makan siang gratis sebab google mendapatkan nilai yang lebih yaitu data traffic atau pergerakan smartphone android yang bisa dimanfaatkan untuk berbagai keperluan diantaranya untuk pemetaan dan transportasi.




Ketika 5 tahun yang lalu memulai kembali meng-koding GIS, saya sangat berharap bahwa google akan memberikan banyak kemudahan, namun untuk developer kelas teri, yanh dirasakan adalah google maps itu terlalu mahal untuk biaya penggunaan API nya, sehingga saat itu saya beralih ke OSM yang open source. Dan ujungnya ketika diminta membantu mengajar koding di prodi D4 Transportasi Fakultas Vokasi UNESA, saya teringat akan OSM dan bertemu dengan layanan API yang cukup berhubungan dengan GIS dan Transportasi yaitu TomTom. Dan ketika saya bertanya pada AI QWEN jawabannya seperti ini :

TomTom adalah perusahaan teknologi yang terkenal karena produk dan layanannya dalam bidang navigasi GPS (Global Positioning System). Perusahaan ini didirikan pada tahun 1991 di Amsterdam, Belanda, dan awalnya berfokus pada pengembangan perangkat lunak untuk perangkat mobile. Namun, TomTom kemudian menjadi sangat terkenal karena perangkat navigasi GPS portabel yang digunakan di mobil.


Berikut adalah beberapa aspek utama dari TomTom :


1. **Perangkat Navigasi GPS**

   - TomTom memproduksi perangkat GPS portabel yang dirancang untuk membantu pengguna menemukan rute terbaik saat berkendara. Perangkat ini sering disebut sebagai "Personal Navigation Devices" (PNDs).

   - Fitur utama termasuk peta digital yang diperbarui secara berkala, petunjuk suara, informasi lalu lintas waktu nyata, dan rute alternatif untuk menghindari kemacetan.

   - Beberapa model juga menyertakan fitur tambahan seperti deteksi zona kecepatan, titik-titik minat (POI), dan integrasi dengan smartphone.


2. **Aplikasi Navigasi**

   - Selain perangkat fisik, TomTom juga menawarkan aplikasi navigasi untuk smartphone (iOS dan Android). Aplikasi ini memberikan fungsi serupa dengan perangkat GPS portabel, tetapi lebih fleksibel karena dapat diunduh dan digunakan di perangkat seluler.

   - Aplikasi ini sering kali mencakup fitur seperti pembaruan peta gratis, informasi lalu lintas real-time, dan mode offline untuk penggunaan tanpa koneksi internet.


3. **Layanan Peta Digital**

   - TomTom memiliki divisi yang fokus pada pengembangan peta digital untuk berbagai kebutuhan, termasuk otomotif, logistik, dan transportasi.

   - Mereka menyediakan data peta yang digunakan oleh banyak perusahaan besar, termasuk pembuat mobil dan platform navigasi lainnya.

   - Teknologi mereka mendukung sistem navigasi bawaan di kendaraan modern, serta solusi untuk kendaraan otonom.


 4. **Teknologi Lalu Lintas**

   - TomTom dikenal karena sistem analisis lalu lintasnya yang canggih. Mereka mengumpulkan data lalu lintas dari berbagai sumber, termasuk perangkat GPS, aplikasi, dan sensor di jalan, untuk memberikan informasi lalu lintas yang akurat.

   - Salah satu produk terkenal mereka adalah **TomTom Traffic**, yang memberikan pembaruan lalu lintas waktu nyata kepada pengguna.


 5. **Solusi untuk Industri Otomotif**

   - TomTom bekerja sama dengan produsen mobil untuk menyediakan teknologi navigasi dan peta untuk sistem infotainment di kendaraan.

   - Mereka juga terlibat dalam pengembangan teknologi untuk kendaraan otonom, termasuk peta presisi tinggi (HD Maps) yang digunakan untuk navigasi kendaraan tanpa pengemudi.

6. **Inovasi Terkini**

   - TomTom terus berinovasi di bidang teknologi lokasi dan navigasi. Mereka telah mengembangkan solusi untuk berbagai industri, termasuk transportasi, logistik, dan manajemen armada.

   - Dengan meningkatnya popularitas kendaraan listrik (EV), TomTom juga menawarkan fitur seperti pencarian stasiun pengisian daya dan optimasi rute untuk EV.


Contoh dari data yang disediakan oleh tomtom adalah  kepadatan lalu lintas di kota besar di Indonesia pada tahun 2024.




Lalu apa yang saya bisa bagi ke mahasiswa saya? Saya langsung tunjukkan API geocode dari TomTom:


  • Misal saya ingin mencari dimana titik kampus unesa ketintang ?
  • Kita gunakan API yang bernama GEOCODE, silahkan daftar akun developer pada web tomtom untuk mendapatkan API key
  • https://api.tomtom.com/search/2/geocode/unesa%20ketintang.json?storeResult=false&limit=10&lat=-7.2399992&lon=112.7471288&key={api key akun tomtom kamu}

Hasil dari pemanggilan API diatas seperti ini :

{"summary":{"query":"unesa ketintang","queryType":"NON_NEAR","queryTime":96,"numResults":10,"offset":0,"totalResults":265,"fuzzyLevel":2,"geoBias":{"lat":-7.2399992,"lon":112.7471288}},"results":[{"type":"Street","id":"e9ieUCvNrsqyPy0Cvy2cfw","score":2.4756507874,"dist":7956.933017779969,"matchConfidence":{"score":0.6917175123197143},"address":{"streetName":"Jalan Ketintang","municipality":"Surabaya","municipalitySecondarySubdivision":"Ketintang","countrySubdivision":"Jawa Timur","countrySubdivisionName":"Jawa Timur","countrySubdivisionCode":"JI","postalCode":"60231, 60243","countryCode":"ID","country":"Indonesia","countryCodeISO3":"IDN","freeformAddress":"Jalan Ketintang, Surabaya, Jawa Timur 60231, 60243","localName":"Surabaya"},"position":{"lat":-7.3105161,"lon":112.7348662},"viewport":{"topLeftPoint":{"lat":-7.31037,"lon":112.73413},"btmRightPoint":{"lat":-7.31056,"lon":112.7351}}},{"type":"Street","id":"lGUDfHDA8WAeHecAc_g1_w","score":2.4742546082,"dist":8010.299126124446,"matchConfidence":{"score":0.5804793046605109},"address":{"streetName":"Aspol Ketintang","municipality":"Surabaya","municipalitySecondarySubdivision":"Ketintang","countrySubdivision":"Jawa Timur","countrySubdivisionName":"Jawa Timur","countrySubdivisionCode":"JI","postalCode":"60231","countryCode":"ID","country":"Indonesia","countryCodeISO3":"IDN","freeformAddress":"Aspol Ketintang, Surabaya, Jawa Timur 60231","localName":"Surabaya"},"position":{"lat":-7.3107785,"lon":112.733611},"viewport":{"topLeftPoint":{"lat":-7.3103,"lon":112.73348},"btmRightPoint":{"lat":-7.31102,"lon":112.7337}}},{"type":"Street","id":"uOEz23Z4P-Cf72bDEk-lbA","score":2.4518318176,"dist":7948.56952394092,"matchConfidence":{"score":0.6169948958054428},"address":{"streetName":"Jalan Ketintang Barat","municipality":"Surabaya","municipalitySecondarySubdivision":"Wonokromo","countrySubdivision":"Jawa Timur","countrySubdivisionName":"Jawa Timur","countrySubdivisionCode":"JI","postalCode":"60243","countryCode":"ID","country":"Indonesia","countryCodeISO3":"IDN","freeformAddress":"Jalan Ketintang Barat, Surabaya, Jawa Timur 60243","localName":"Surabaya"},"position":{"lat":-7.3076704,"lon":112.7239106},"viewport":{"topLeftPoint":{"lat":-7.30761,"lon":112.72391},"btmRightPoint":{"lat":-7.30767,"lon":112.72398}}},{"type":"Street","id":"B-DbRqA35aw-JeVjK5Acwg","score":2.4455544949,"dist":8189.648375523681,"matchConfidence":{"score":0.5901404651607418},"address":{"streetName":"Jalan Ketintang Madya","municipality":"Surabaya","municipalitySecondarySubdivision":"Ketintang","countrySubdivision":"Jawa Timur","countrySubdivisionName":"Jawa Timur","countrySubdivisionCode":"JI","postalCode":"60231","countryCode":"ID","country":"Indonesia","countryCodeISO3":"IDN","freeformAddress":"Jalan Ketintang Madya, Surabaya, Jawa Timur 60231","localName":"Surabaya"},"position":{"lat":-7.310193,"lon":112.724647},"viewport":{"topLeftPoint":{"lat":-7.30817,"lon":112.72324},"btmRightPoint":{"lat":-7.31153,"lon":112.72554}}},{"type":"Street","id":"aVmwrkyBItABNMIQoTOc0w","score":2.4421536922,"dist":8318.912515539143,"matchConfidence":{"score":0.5712848480571701},"address":{"streetName":"Jalan Ketintang Wiyata","municipality":"Surabaya","municipalitySecondarySubdivision":"Ketintang","countrySubdivision":"Jawa Timur","countrySubdivisionName":"Jawa Timur","countrySubdivisionCode":"JI","postalCode":"60231","countryCode":"ID","country":"Indonesia","countryCodeISO3":"IDN","freeformAddress":"Jalan Ketintang Wiyata, Surabaya, Jawa Timur 60231","localName":"Surabaya"},"position":{"lat":-7.311699,"lon":112.725596},"viewport":{"topLeftPoint":{"lat":-7.3102,"lon":112.72495},"btmRightPoint":{"lat":-7.31336,"lon":112.72613}}},{"type":"Street","id":"CWCKM1BVplC27ldYNAyJxA","score":2.4357554913,"dist":8559.821839376486,"matchConfidence":{"score":0.6098092383871191},"address":{"streetName":"Jalan Ketintang Jaya","municipality":"Surabaya","municipalitySecondarySubdivision":"Ketintang","countrySubdivision":"Jawa Timur","countrySubdivisionName":"Jawa Timur","countrySubdivisionCode":"JI","postalCode":"60231","countryCode":"ID","country":"Indonesia","countryCodeISO3":"IDN","freeformAddress":"Jalan Ketintang Jaya, Surabaya, Jawa Timur 60231","localName":"Surabaya"},"position":{"lat":-7.3133399,"lon":112.7235488},"viewport":{"topLeftPoint":{"lat":-7.31068,"lon":112.72246},"btmRightPoint":{"lat":-7.31659,"lon":112.72444}}},{"type":"Street","id":"Lv3BPlc61skQc7-UQwVk5A","score":2.4306242466,"dist":7855.83359643566,"matchConfidence":{"score":0.6032409644893819},"address":{"streetName":"Jalan Ketintang Gang 4","municipality":"Surabaya","municipalitySecondarySubdivision":"Wonokromo","countrySubdivision":"Jawa Timur","countrySubdivisionName":"Jawa Timur","countrySubdivisionCode":"JI","postalCode":"60243","countryCode":"ID","country":"Indonesia","countryCodeISO3":"IDN","freeformAddress":"Jalan Ketintang Gang 4, Surabaya, Jawa Timur 60243","localName":"Surabaya"},"position":{"lat":-7.307752,"lon":112.726945},"viewport":{"topLeftPoint":{"lat":-7.30741,"lon":112.72647},"btmRightPoint":{"lat":-7.3083,"lon":112.72777}}},{"type":"Street","id":"p8tU84Huguu4zN7R3TGYLw","score":2.428283453,"dist":7947.518343296118,"matchConfidence":{"score":0.5744897129760105},"address":{"streetName":"Jalan Ketintang Gang Nirwana","municipality":"Surabaya","municipalitySecondarySubdivision":"Wonokromo","countrySubdivision":"Jawa Timur","countrySubdivisionName":"Jawa Timur","countrySubdivisionCode":"JI","postalCode":"60243","countryCode":"ID","country":"Indonesia","countryCodeISO3":"IDN","freeformAddress":"Jalan Ketintang Gang Nirwana, Surabaya, Jawa Timur 60243","localName":"Surabaya"},"position":{"lat":-7.3092358,"lon":112.7292429},"viewport":{"topLeftPoint":{"lat":-7.30858,"lon":112.72908},"btmRightPoint":{"lat":-7.30979,"lon":112.72943}}},{"type":"Street","id":"Q-2prKZatjMRnAfgDNg4aA","score":2.426160574,"dist":8030.224816078184,"matchConfidence":{"score":0.5840208710051024},"address":{"streetName":"Jalan Ketintang Tengah 2","municipality":"Surabaya","municipalitySecondarySubdivision":"Ketintang","countrySubdivision":"Jawa Timur","countrySubdivisionName":"Jawa Timur","countrySubdivisionCode":"JI","postalCode":"60231","countryCode":"ID","country":"Indonesia","countryCodeISO3":"IDN","freeformAddress":"Jalan Ketintang Tengah 2, Surabaya, Jawa Timur 60231","localName":"Surabaya"},"position":{"lat":-7.309328,"lon":112.726744},"viewport":{"topLeftPoint":{"lat":-7.30875,"lon":112.72583},"btmRightPoint":{"lat":-7.3102,"lon":112.72708}}},{"type":"Street","id":"l1lj1V--wtuBD_t619Ar_A","score":2.4258370399,"dist":8042.793984337351,"matchConfidence":{"score":0.5503830420110429},"address":{"streetName":"Jalan Ketintang Timur PTT","municipality":"Surabaya","municipalitySecondarySubdivision":"Ketintang","countrySubdivision":"Jawa Timur","countrySubdivisionName":"Jawa Timur","countrySubdivisionCode":"JI","postalCode":"60231","countryCode":"ID","country":"Indonesia","countryCodeISO3":"IDN","freeformAddress":"Jalan Ketintang Timur PTT, Surabaya, Jawa Timur 60231","localName":"Surabaya"},"position":{"lat":-7.310581,"lon":112.731192},"viewport":{"topLeftPoint":{"lat":-7.30977,"lon":112.73095},"btmRightPoint":{"lat":-7.31138,"lon":112.73144}}}]}
Data hasil reply diatas sangatlah kurang menarik, jadi data teks berformat Json tersebut dapat kita tumpangkan ke peta OSM sehingga bisa menampilkan peta pencarian lokasi seperti contoh berikut:



  • Data dari reply API berformat JSON
  • HTML dapat melakukan parsing JSON menjadi format yang lebih visual
  • Menggunakan javascript siap pakai “leaflet.js” dari OSM dan kemudian di tumpangkan data hasil reply API TomTom Geocode
  • Koding HTML bisa di unduh : https://pastebin.com/jeyJeqev

Tidak hanya geocoding saja, banyak sekali API yang gratis maupun berbayar (trial 30 hari) dan yang saya ingin tunjukkan adalah API Route dan Traffic dimana tomtom dapat memberikan rute terpendek dari 2 buah titik dan kemudian bisa juga ditambahkan informasi trafik lalulintas dirute tersebut, seperti pada contoh ini.

Koding html bisa diunduh disini : https://pastebin.com/005TnmgQ


Dari hasil rute diatas dapat juga di inspeksi pada console dan pada plot pointsnya dapat digunakan sebagai inputan titik-titik GPS pada pembahasan sebelumnya (baca disini), dengan cara yang sangat simple copy-paste lalu save di notepad. 

Apa lagi yang bisa tomtom lakukan ? Banyak deh..coba main main ke websitenya dan akan ketemu kecanggihan dunia transportasi yang digabungkan dengan teknologi mutahir.





Selamat Belajar !
Share:

Kontak Penulis



12179018.png (60×60)
+628155737755

Mail : ahocool@gmail.com

Site View

Categories

555 (8) 7 segmen (3) adc (4) amplifier (2) analog (19) android (14) antares (11) arduino (28) artikel (11) attiny (3) attiny2313 (19) audio (5) baterai (5) blog (1) bluetooth (1) chatgpt (2) cmos (2) crypto (2) dasar (46) digital (11) dimmer (5) display (3) esp8266 (26) euro2020 (13) gcc (1) gis (3) gsm (1) iklan (1) infrared (2) Input Output (3) iot (78) jam (7) jualan (12) kereta api (1) keyboard (1) keypad (3) kios pulsa (2) kit (6) komponen (17) komputer (3) komunikasi (1) kontrol (8) lain-lain (8) lcd (2) led (14) led matrix (6) line tracer (1) lm35 (1) lora (11) lorawan (2) MATV (1) memory (1) metal detector (4) microcontroller (70) micropython (6) mikrokontroler (2) mikrokontroller (14) mikrotik (5) modbus (9) mqtt (3) ninmedia (5) ntp (1) paket belajar (19) palang pintu otomatis (1) parabola (88) pcb (2) power (1) praktek (2) project (33) proyek (1) python (9) radio (28) raspberry pi (9) remote (1) revisi (1) rfid (1) robot (1) rpm (2) rs232 (1) script break down (3) sdcard (3) sensor (2) sharing (3) signage (1) sinyal (1) sms (6) software (18) solar (1) solusi (1) statistik (5) tachometer (2) technology (1) teknologi (2) telegram (2) telepon (9) televisi (167) television (28) telkomiot (5) transistor (2) troubleshoot (3) tulisan (94) tutorial (108) tv digital (6) tvri (2) unesa (8) vu meter (2) vumeter (2) wav player (3) wayang (1) wifi (3) yolo (9)

Arsip Blog

Diskusi


kaskus
Forum Hobby Elektronika