วิธีเชื่อมต่อแผนที่จาก Portable Basemap Server (PBS) ไปยัง QGIS ผ่าน WMTS
บทนำ
หากคุณต้องการใช้แผนที่จาก Google Maps หรือแหล่งข้อมูลแผนที่พื้นหลังอื่น ๆ ในโปรแกรม QGIS โดยไม่ต้องติดตั้งปลั๊กอินอย่าง OpenLayers หรือ QuickMapServices คุณสามารถใช้โปรแกรมที่ชื่อว่า Portable Basemap Server (PBS) ได้ ซึ่งเป็นเครื่องมือเล็ก ๆ ที่ให้บริการแผนที่พื้นหลังในรูปแบบ WMTS (Web Map Tile Service)
WMTS เป็นมาตรฐานการให้บริการแผนที่ที่แบ่งเป็นภาพเล็ก ๆ เรียกว่า tiles ซึ่งเหมาะกับการใช้งานแผนที่พื้นหลังใน QGIS และสามารถใช้งานได้รวดเร็วมาก
ในบทความนี้ เราจะพาคุณไปดูวิธีการใช้ PBS เพื่อให้บริการแผนที่ Google Maps และนำมาเชื่อมต่อกับ QGIS แบบทีละขั้นตอนอย่างละเอียด
สิ่งที่ต้องมี
- คอมพิวเตอร์ที่ติดตั้ง QGIS แล้ว (แนะนำเวอร์ชัน 3.22 ขึ้นไป)
- โปรแกรม Portable Basemap Server (PBS) เวอร์ชัน 3.1 หรือใหม่กว่า
- เชื่อมต่ออินเทอร์เน็ตเพื่อให้ PBS ดึงข้อมูลแผนที่จาก Google ได้
- ทั้ง PBS และ QGIS ต้องอยู่ในเครือข่ายเดียวกัน เช่น ใช้ Wi-Fi เดียวกัน
ขั้นตอนที่ 1: เปิดโปรแกรม PBS และตั้งค่า
- เปิดโปรแกรม
PortableBasemapServer.exe
- ตรงช่อง Data Source Type ให้เลือกเป็น
GoogleMapsImagery
- ให้แน่ใจว่าช่อง Service Port เป็น 7080 (หรือเลขอื่นที่คุณต้องการใช้ แต่ 7080 เป็นค่าเริ่มต้นที่ดี)
- ช่อง Service Name จะถูกตั้งอัตโนมัติเป็น
GoogleMapsImagery
ไม่ต้องแก้
- ช่อง Visual Style ให้เลือกเป็น
None
หรือสไตล์อื่นตามต้องการ - ติ๊ก ✅ ที่ช่อง AllowMemoryCache เพื่อให้โหลดเร็วขึ้น
- กดปุ่ม Start New Service ด้านล่าง
- สังเกตด้านล่างจะมีข้อความแสดงลิงก์ URL ขึ้นมาสองอัน ได้แก่:
- ArcGIS REST URL (ไม่จำเป็นสำหรับ QGIS)
- OGC WMTS URL → อันนี้สำคัญมาก ใช้สำหรับเชื่อมกับ QGIS
ตัวอย่าง URL ที่ต้องใช้:
arduinoคัดลอกแก้ไขhttp://192.168.1.7:7080/PBS/rest/services/GoogleMapsImagery/MapServer/WMTS
(เลข IP อาจต่างกันในแต่ละเครื่อง ให้ใช้ตามที่ PBS แสดง)
ขั้นตอนที่ 2: เปิด QGIS และเชื่อมต่อ WMTS
- เปิดโปรแกรม QGIS
- ไปที่เมนูด้านบน เลือก sqlคัดลอกแก้ไข
Layer > Add Layer > Add WMS/WMTS Layer...
หรือคลิกปุ่มไอคอนรูปโลกในแถบเครื่องมือ
- จะมีหน้าต่างชื่อว่า Data Source Manager เปิดขึ้นมา
- ที่แท็บด้านซ้าย เลือก WMS/WMTS
- คลิกปุ่ม New เพื่อสร้างการเชื่อมต่อใหม่
- ในหน้าต่าง “Create a New WMS/WMTS Connection” ให้ตั้งค่าดังนี้:
- Name: พิมพ์ชื่อที่คุณจำได้ เช่น
Google WMTS PBS
- URL: วางลิงก์ที่ได้จาก PBS เช่น arduinoคัดลอกแก้ไข
http://192.168.1.7:7080/PBS/rest/services/GoogleMapsImagery/MapServer/WMTS
- ไม่ต้องเปลี่ยนค่าอื่น
- Name: พิมพ์ชื่อที่คุณจำได้ เช่น
- กด OK
ขั้นตอนที่ 3: เพิ่มแผนที่เข้ามาใน QGIS
- หลังจากสร้าง connection แล้ว กลับมาที่หน้าต่าง WMS/WMTS
- เลือกชื่อ connection ที่คุณสร้างไว้ แล้วคลิก Connect
- รอไม่กี่วินาที จะมี Layer ชื่อว่า
GoogleMapsImagery
แสดงขึ้นมา
- เลือก Layer นั้น แล้วคลิกปุ่ม Add
- ปิดหน้าต่าง Data Source Manager
ตอนนี้คุณจะเห็นแผนที่จาก Google Maps แสดงในโปรเจกต์ QGIS ของคุณแล้ว 🎉
ทดสอบการใช้งาน
ลองเลื่อนแผนที่ ซูมเข้าออก และดูว่ามีข้อมูลแผนที่แสดงหรือไม่ หากแผนที่โหลดไม่ขึ้นหรือเป็นสีเทา อาจเกิดจาก:
- PBS ปิดอยู่ (ตรวจสอบว่า PBS ต้องเปิดไว้ตลอด)
- IP Address ไม่ถูกต้อง หรือไม่อยู่ในเครือข่ายเดียวกัน
- Firewall หรือ Antivirus บล็อกพอร์ต 7080
- คอมพิวเตอร์ไม่ได้เชื่อมอินเทอร์เน็ต (PBS ต้องใช้เน็ตเพื่อดึงข้อมูลจาก Google)
เคล็ดลับเพิ่มเติม
- ถ้าคุณต้องการให้เครื่องอื่นในเครือข่ายใช้งาน WMTS นี้ได้ด้วย ให้ใช้ IP ที่ PBS แสดง เช่น: arduinoคัดลอกแก้ไข
http://192.168.1.7:7080/...
แล้วให้เครื่องอื่นในวง LAN ใช้ลิงก์นี้ได้เลย - อย่าใช้ “localhost” หรือ “127.0.0.1” หากจะให้เครื่องอื่นในเครือข่ายใช้งานด้วย เพราะมันหมายถึง “เครื่องตัวเองเท่านั้น”
ข้อควรระวัง
- การใช้ Google Maps ผ่าน PBS ควรใช้เพื่อการศึกษาเท่านั้น ไม่ควรใช้เพื่อการพาณิชย์หรือนำไปแสดงบนเว็บไซต์แบบสาธารณะโดยไม่มีสิทธิ์
- ควรระวังเรื่องลิขสิทธิ์ของข้อมูล Google Maps
- อย่าเปิดพอร์ต 7080 ออกอินเทอร์เน็ตโดยตรงถ้าไม่มีระบบความปลอดภัยเพียงพอ
สรุป
การใช้ Portable Basemap Server (PBS) ร่วมกับ QGIS เป็นวิธีที่ง่ายและรวดเร็วในการนำแผนที่ Google Maps มาใช้ในโปรเจกต์ GIS ของคุณ โดยใช้มาตรฐาน WMTS ที่ QGIS รองรับอยู่แล้ว วิธีนี้ไม่ต้องลงปลั๊กอินเพิ่มเติม และใช้งานได้ดีมากสำหรับผู้ที่ทำงานในระบบปิด หรือในองค์กร
หากคุณกำลังจะสอนนักเรียน หรือเขียนคู่มือบนเว็บไซต์ mygishub.com บทความนี้สามารถนำไปใช้หรือปรับแก้ได้ตามต้องการครับ