1 คะแนน โดย GN⁺ 2024-10-21 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • เป็นเว็บซิมูเลเตอร์ที่คำนวณ ความแรงสัญญาณ WiFi ตามหลักฟิสิกส์ซึ่งเปลี่ยนไปตามโครงสร้างและวัสดุของบ้าน เพื่อช่วยเลือกตำแหน่งวางเราเตอร์
  • การจำลองทำงานแบบ รันในเครื่องแบบเรียลไทม์ บนอุปกรณ์ของผู้ใช้ และสามารถลองปรับสีหรือความเร็วของการจำลองพื้นหลังได้
  • สามารถรัน ตัวอย่างการจำลอง ที่ใช้แปลนบ้านจริงและวัสดุของผนังกับหน้าต่าง พร้อมมีวิดีโอเดโมและเอกสารประกอบ
  • คำนวณโดยตรงว่าสนามคลื่นแม่เหล็กไฟฟ้าเคลื่อนที่ผ่านวัสดุอย่างไร และแสดงตัวอย่างที่คลื่น หักเห รอบกล่องข้อความ
  • เนื่องจากเป็นวิธีที่ใช้การคำนวณสูง จึงใช้ WebGPU เพื่ออาศัยการ์ดจอให้จำลองได้เร็วขึ้นในเบราว์เซอร์

การจำลอง WiFi เพื่อเลือกตำแหน่งเราเตอร์

  • WiFi Solver เป็นเอนจินจำลองที่แสดงให้เห็นว่าสัญญาณ WiFi จากแอ็กเซสพอยต์กระจายตัวในบ้านอย่างไร
  • มุ่งเน้นการคำนวณ ความแรงสัญญาณ WiFi ภายในบ้านเพื่อช่วยตัดสินใจว่าจะวางเราเตอร์ WiFi ไว้ตำแหน่งใด
  • การจำลองทั้งหมด ทำงานสด บนอุปกรณ์ของผู้ใช้
  • สามารถรันตัวอย่างที่ใช้แปลนบ้านจริงและวัสดุสมจริงสำหรับผนังกับหน้าต่างได้
  • สามารถดูฟีเจอร์บางส่วนผ่านวิดีโอเดโม และดูข้อมูลเพิ่มเติมได้ในเอกสาร
  • สามารถทดลองใช้งานได้หนึ่งวัน หรือชำระเงินครั้งเดียวเพื่อรับสิทธิ์เข้าถึงถาวร

การคำนวณทางฟิสิกส์และการใช้ WebGPU

  • WiFi Solver จำลองโดยตรงว่าคลื่นแม่เหล็กไฟฟ้าเคลื่อนที่ผ่านวัสดุอย่างไรด้วย การประมาณค่าให้น้อยที่สุด
  • เมื่อเลื่อนหน้า คุณจะเห็นคลื่น หักเห รอบกล่องข้อความ
  • เนื่องจากเป็นแนวทางที่มีต้นทุนการคำนวณสูง จึงใช้ WebGPU เพื่ออาศัยการ์ดจอและเพิ่มความเร็วการจำลอง
  • ด้านล่างสามารถเพิ่มแหล่งกำเนิดใหม่ให้กับการจำลองพื้นหลังได้
  • ดูผลงานอื่นของผู้สร้างได้ที่บล็อก

1 ความคิดเห็น

 
GN⁺ 2024-10-21
ความคิดเห็นจาก Hacker News
  • ภาพแสดงผลดูดีมาก แต่โฟกัสที่ตัวคลื่นมากเกินไปเมื่อเทียบกับ รูปแบบการครอบคลุมจริงของช่วงความยาวคลื่น 6~12.5 ซม. เลยทำให้มีประโยชน์น้อยกว่าเครื่องมืออื่นสำหรับใช้ตรวจสอบพื้นที่ครอบคลุม
    ถึงอย่างนั้น ในฐานะโปรเจ็กต์เชิงศิลปะก็น่าสนุก และยังทำให้นึกถึง projectM ซึ่งเป็น Milkdrop โอเพนซอร์สที่รองรับ WebGL https://github.com/projectM-visualizer/projectm/blob/master/... กับ Geisswerks https://www.geisswerks.com/ ซึ่งเป็นหนึ่งในต้นฉบับ
    ถ้าชอบอะไรแบบนี้ อาจจะชอบ NestDrop ด้วย ซึ่งมีการแสดงภาพดนตรีสำหรับ VJ และความสามารถในการฉายภาพภายในโดม https://nestimmersion.ca/nestdrop.php

    • ถ้าเข้าไปในหนึ่งในตัวอย่างการจำลอง จะสามารถเปลี่ยนภาพแสดงผลจากคลื่นเป็น ความหนาแน่นกำลังเฉลี่ยตามเวลา ได้ ซึ่งน่าจะใกล้เคียงกับการแสดงพื้นที่ครอบคลุมแบบที่ต้องการมากกว่า
  • มีบั๊ก: ถ้ากดปุ่ม “add a new source” รัว ๆ จะทำให้อาร์เรย์ที่มีขนาดสูงสุดคงที่ 128 ล้น แล้วเกิด JavaScript exception แสดงบนหน้าจอ
    อีกอย่าง ไม่แน่ใจว่าเกิดเฉพาะบนการ์ด AMD หรือเปล่า แต่ถ้าเลื่อนหน้าจอด้วยรูปแบบบางอย่างเพราะกล่องข้อความ การจำลองจะพังได้ ถ้ากด Page Up/Down เร็ว ๆ หรือเลื่อนลงไปสุดแล้วเขย่าตำแหน่งสกรอลล์ ข้อมูลเสียจะกระจายจนทั้งหน้าจอเต็มไปด้วยนอยส์ สีดำ หรือสีขาว และถ้าเปิดโหมด 3D ก็จะกลายเป็นความโกลาหลของโพลิกอน

    • ปัญหาที่สองเกิดซ้ำได้บน Apple M1 ด้วย ดังนั้นคงไม่ใช่ ปัญหาเฉพาะการ์ดจอ
    • ดูเหมือนว่าปัญหาที่สองจะเกิดได้ง่ายขึ้นเมื่อเพิ่ม ความเร็วการจำลอง
  • ที่บอกว่า “ถ้าเลื่อนหน้าจอจะเห็นคลื่นหักเหรอบกล่องข้อความ” นี่เป็นฟีเจอร์ที่ทั้งไร้ประโยชน์แต่ก็ เท่มาก

  • เมื่อก่อนเคยอยากทำอะไรคล้าย ๆ กันกับเสียง ไม่ใช่กับหูฟัง แต่เป็น การตัดเสียงรบกวนแบบแอ็กทีฟในห้อง โดยวางอุปกรณ์ที่รวมไมโครโฟนกับลำโพงไว้ตามจุดยุทธศาสตร์
    พอลองคิดดูสักหน่อยก็พบว่าเพราะการแทรกสอด มันอาจสร้างทั้งบริเวณเงียบและบริเวณที่เสียงดังเป็นสองเท่า จึงไม่ใช่อุดมคติเท่าไร แต่ก็น่าสนใจ แล้วพอคิดต่อก็พบว่าต้องจัดการแบบสามมิติ ทำให้ความซับซ้อนของการตั้งค่าเพิ่มขึ้นมาก ดูจากเอฟเฟกต์การหักเหแล้ว ที่นี่ก็น่าจะใช้หลักคล้ายกันได้

    • ถ้ามี “เลเซอร์เสียง” ก็อาจควบคุมคลื่นที่เข้ามาในบริเวณทรงเสาได้ เพื่อหักล้างเสียงขาเข้าเหมือน “ร่มเสียง”
      แต่จะใช้ได้กับ เสียงทั่วไป ที่มีทิศทางไม่ชัดเจนเหมือนลำโพงไกล ๆ เท่านั้น และลบเสียงพูดของคนได้ยาก อย่างไรก็ตาม มันอาจมีประโยชน์มากสำหรับทำให้แต่ละโต๊ะในคลับสามารถคุยกันได้ตามปกติ ปัญหาคือเทคโนโลยีที่เกี่ยวข้องยังติดสิทธิบัตรอยู่ และถึงจะทำได้ไม่ยากมาก ก็ยังต้องรอสิทธิบัตรหมดอายุหรือจ่ายค่าไลเซนส์
    • ถ้าทำได้จริงในทางเทคนิค ก็ดูมีสิทธิ์เป็น ยูนิคอร์นตัวถัดไป ได้เลย
  • ฝั่งภาพแสดงผลนี่เจ๋งมาก ส่วนที่จัดการหลายตัวส่งสัญญาณและช่วงท้ายของการเลื่อนทำให้นึกถึง https://apenwarr.ca/beamlab/ ที่แสดง beamforming
    สำหรับเดโมนี้ วิธีที่ง่ายที่สุดในการดูการทำงานคือไปที่เมนูด้านขวา ปิด 3 เพื่อให้เหลือตัวส่งสัญญาณแค่ 2 ตัว จากนั้นกดปุ่ม “r” แล้วคลิกหรือลากเพื่อดูขั้นตอนการปรับลำคลื่นให้เหมาะสมที่สุด ทางด้านขวายังดูสถิติกำลังรับที่เพิ่มขึ้นได้ด้วย
    เดโมนี้น่าจะสนุกที่สุดในแง่การดู แต่สำหรับคนที่อยากปรับตำแหน่ง Wi‑Fi ในบ้านให้เหมาะสม Hamina free tier น่าจะมีประโยชน์กว่ามาก https://www.hamina.com/planner
    ข้อเสียคือบังคับให้สร้างบัญชี แต่ข้อดีคือมีมุมมองสรุปหลายแบบที่ออกแบบมาสำหรับตัวชี้วัดและฟีเจอร์ของ Wi‑Fi ทั่วไป จึงไม่ได้เน้นแค่การแสดงการจำลองคลื่นโดยตรงมากนัก

    • เข้ามาเพราะหวังว่าจะมีคนพูดถึง Hamina พอดี ใช้มันในงานสำหรับ วางแผนติดตั้งระบบไร้สาย และถือว่าเป็นซอฟต์แวร์ที่ค่อนข้างดี
  • ฉันกดลิงก์เพิ่มแหล่งกำเนิดใหม่ด้านล่างมากเกินไป แล้วเจอ Unexpected Application Error
    ข้อผิดพลาดหลักคือ RangeError: offset is out of bounds และเกิดใน Float32Array.set() กับ Pi.makeUniformBuffer https://wifi-solver.com/dist/bundle-UKQ5A5W6.js:32:118833

  • ยังมีอีกโปรเจ็กต์ที่น่าสนใจคล้ายกันคือ https://cemsim.com/ ไม่ใช่สิ่งที่ฉันสร้าง

  • ตอนแรกคาดหวังว่านี่จะเป็นการประมวลผลวิทยุแบบ SDR คือส่งนอยส์ที่อ่านจาก GPIO เข้าเบราว์เซอร์ผ่านไพป์ เพื่อแสดง กิจกรรมของทุกช่องสัญญาณ พร้อมกันในครั้งเดียว

  • ถ้ารันเดโม Waveguide Simulator บน Alienware M15 Ryzen Ed. R5 จะได้ยิน เสียงสั่นแหลมสูง ชัดเจนจากตัวโน้ตบุ๊ก
    สภาพแวดล้อมคือ RTX 3070, Windows 11 Pro, Chrome v129 ตอนแรกคิดว่าเป็นเสียงจากลำโพง แต่ถึงจะลดเสียงลงก็ยังได้ยินตลอดเวลาที่ซิมูเลเตอร์ทำงาน ไม่เคยได้ยินในเกมหรือเดโม WebGPU อื่น ๆ และการจำลองบ้านแบบสมจริงก็ทำให้เกิดรูปแบบเสียงอีกแบบหนึ่ง

    • ฟังดูเหมือน coil whine ซึ่งเป็นอาการที่ได้ยินกันบ่อยเมื่อ GPU ทำงานเต็มกำลัง
      https://en.wikipedia.org/wiki/Electromagnetically_induced_ac...
    • มีโอกาสสูงว่าเป็นเสียงจากวงจรจ่ายไฟของ GPU ถ้ารูปแบบการใช้พลังงานมีความถี่ที่มนุษย์ได้ยิน ส่วนประกอบอย่างอินดักเตอร์หรือคาปาซิเตอร์ก็อาจสั่นเชิงกลตามความถี่นั้นจนเกิดเสียงได้
      เหตุที่ไม่ได้ยินในเกมอาจเป็นเพราะเสียงเกมดังกว่า หรือรูปแบบการใช้พลังงานไม่มีความถี่ที่ได้ยินแบบนั้น วงจรจ่ายไฟของ CPU ก็อาจเกิดปรากฏการณ์เดียวกันได้ แต่เพราะอันนี้ใช้ GPU จึงปลอดภัยกว่าถ้าจะมองไปทางฝั่ง GPU
    • อาจเป็น coil whine หรือเสียงคาปาซิเตอร์จากการที่ GPU รันที่รีเฟรชเรตสูงเกินไป วิธีแก้ง่ายที่สุดคือไปตั้งค่าใน nvidia control panel ให้จำกัดเฟรมเรตของเบราว์เซอร์หรือแบบ global ไว้ที่ราว 2 เท่าของรีเฟรชเรตสูงสุดของจอ
      เป็นเรื่องที่เจอกันค่อนข้างบ่อยเมื่อโหลดงานเกิน 600fps
    • เดสก์ท็อป 3070 ก็มีเสียงแบบเดียวกัน ส่วน Mac M1 ไม่มี
    • บน AMD Radeon Mobile GPU ของโน้ตบุ๊กก็มี coil whine แบบเดียวกันทุกครั้งที่รันโค้ดที่ใช้ GPU หนัก ๆ
  • ฉันใช้เราเตอร์ Wifi 6E อยู่ เลยสงสัยว่าในที่นี้ 6GHz, 5GHz, 2.4GHz จะมีพฤติกรรมต่างกันอย่างเห็นได้ชัดหรือไม่ รูปรวมเหมือนกันหมดหรือว่าความถี่สร้างความแตกต่างมาก

    • 6GHz กับ 5GHz แทบจะเหมือนกัน ส่วน 5GHz กับ 2.4GHz นั้น การดูดกลืนและการสะท้อน ทำงานต่างกัน จึงน่าจะต่างกันพอสมควร