หน้านี้มีรายละเอียดของโครงการการเขียนเชิงเทคนิคที่ยอมรับสำหรับ Google Season of Docs
ข้อมูลสรุปของโปรเจ็กต์
- องค์กรโอเพนซอร์ส:
- หุ่นยนต์จุดระเบิด
- ผู้เขียนด้านเทคนิค:
- ร้านขนมไทยเล
- ชื่อโปรเจ็กต์:
- บทแนะนำ Ignition Physics และเอกสาร API
- ระยะเวลาของโปรเจ็กต์:
- ระยะเวลามาตรฐาน (3 เดือน)
คำอธิบายโปรเจ็กต์
แรงจูงใจ
ไลบรารี Ignition Physics สามารถใช้งานเครื่องมือฟิสิกส์ได้อย่างยืดหยุ่นเพื่อนำไปไว้ที่แบ็กเอนด์ของการจำลอง Ignition Gazebo เครื่องมือฟิสิกส์ภายนอกจำนวนมากสามารถปรับเข้ากับไลบรารีเป็นปลั๊กอินได้ ซึ่งประกอบด้วยชุดฟีเจอร์ที่แตกต่างกันโดยขึ้นอยู่กับความสามารถและบริบทของการนำไปใช้ เพื่อขับเคลื่อนการจำลองศาลา อย่างไรก็ตาม สถานะปัจจุบันของไลบรารีไม่ได้ให้:
- บทแนะนำที่ครอบคลุมเกี่ยวกับการสร้างปลั๊กอินฟิสิกส์ที่กำหนดเองซึ่งใช้เครื่องมือฟิสิกส์ที่กำหนดเองเป็นตัวขับเคลื่อนการจำลอง
- เอกสาร API ที่สอดคล้องกัน
ข้อเสนอนี้มีเป้าหมายเพื่อแก้ไขปัญหาเหล่านี้เพื่อการดูแลโครงการที่ดียิ่งขึ้นและแนะนำผู้ร่วมให้ข้อมูลและผู้ใช้ใหม่ๆ ด้วยวิธีที่มีหลักการมากขึ้น เราจะกล่าวถึงรายละเอียดของกระบวนการจัดทำเอกสารประกอบในส่วนถัดไป แล้วตามด้วยส่วนเหตุการณ์สำคัญในการวางแผนกรอบเวลาในการทำโครงการให้เสร็จสมบูรณ์ สุดท้ายนี้ จะมีการกล่าวถึงหมายเหตุบางอย่างเกี่ยวกับเอกสารปัจจุบัน
คำอธิบาย
โปรเจ็กต์นี้มีเป้าหมายหลัก 2 ประการ ได้แก่
- สร้างบทแนะนำโดยละเอียดเกี่ยวกับการสร้างปลั๊กอินฟิสิกส์ที่กำหนดเองโดยเชื่อมต่อกับไลบรารี API ปัจจุบัน
- ปรับปรุงเอกสารประกอบของ API ไลบรารีปัจจุบันเพื่อการบำรุงรักษาและการทำงานร่วมกัน
ปัจจุบัน DART เป็นเครื่องมือฟิสิกส์ที่สนับสนุนเพียงอย่างเดียวของไลบรารีนี้ ดังนั้น บทแนะนำจะเกี่ยวข้องกับ DART บทแนะนำเบื้องต้นเหล่านี้จะได้รับการพิจารณาดังนี้
- บทนำ: อธิบายสถาปัตยกรรมระดับสูงของห้องสมุด Ignition Physics เครื่องมือฟิสิกส์ที่รองรับ และเป้าหมาย
- การติดตั้ง: แนะนำให้ผู้ใช้เลือกที่จะติดตั้งเครื่องมือฟิสิกส์ที่จำเป็นตามบริบทของแอปพลิเคชัน บทแนะนำนี้ยังสาธิตการกำหนดค่าตัวอย่างสำหรับปลั๊กอินเครื่องมือฟิสิกส์แต่ละตัวสำหรับการปรับเปลี่ยนการจำลองที่เฉพาะเจาะจง
- การใช้ปลั๊กอิน DART: อธิบายตัวอย่างการใช้เครื่องมือฟิสิกส์ DART ในการจําลอง Gazebo บทแนะนำประกอบด้วยลำดับของการดำเนินการและการกำหนดค่าเพื่อเริ่มไลบรารีนี้เป็นแบ็กเอนด์สำหรับการจำลอง Gazebo ในสภาพแวดล้อมตัวอย่างที่เฉพาะเจาะจง
- สร้างปลั๊กอินที่กำหนดเอง: แนะนำผู้ใช้หรือนักพัฒนาซอฟต์แวร์รายใหม่ให้สร้างปลั๊กอินที่กำหนดเองตามเครื่องมือฟิสิกส์ที่กำหนดเองผ่านไฟล์การกำหนดค่าบางรูปแบบ (อาจเป็นเทมเพลตของคลาส) และพัฒนาอินเทอร์เฟซระหว่าง Phsics Engine API กับ Library API นี้ ดูการตรวจสอบความถูกต้องบางส่วนได้ในตอนท้ายของบทแนะนำ
- การใช้ปลั๊กอินหลายรายการในการจำลอง (ต้องมีการพูดคุย): อธิบายวิธีใช้ปลั๊กอินหลายรายการพร้อมกันขณะรันไทม์สำหรับตัวอย่างการจำลอง
เราจะพูดคุยถึงการวางแผนเพิ่มเติมเกี่ยวกับโครงสร้างบทแนะนำ คำอธิบาย และเนื้อหาในช่วงสานสัมพันธ์ของชุมชน ผู้เขียนบทแนะนำเหล่านี้จะต้องตรวจสอบความถูกต้องของขั้นตอนบทแนะนำก่อนที่จะรวมเข้ากับที่เก็บ
สำหรับเอกสารประกอบของ API คุณสามารถปรับให้เข้ากับรูปแบบเอกสารของ Google C++ สำหรับไลบรารีนี้ได้ เช่น ชั้นเรียนทั้งหมดต้องมีคำอธิบายระดับชั้นเรียน นอกจากนี้ ฟังก์ชันสาธารณะทั้งหมดต้องมีการบันทึกไว้ในเอกสารประกอบพร้อมคำอธิบาย อาร์กิวเมนต์ทั้งหมด รวมถึงผลลัพธ์และข้อยกเว้นที่เป็นไปได้ มีประโยชน์มากที่ระบบจะบันทึกคลาสที่สำคัญที่สุด (เช่น dartsim::RetrieveWorld, Feature เป็นต้น) ก่อนเพื่อให้เป็นมุมมองจากด้านบนที่ง่ายยิ่งขึ้น รูปแบบเอกสารประกอบเพิ่มเติม การระบุชั้นเรียนที่สำคัญจะได้รับการพูดคุยในช่วงสานสัมพันธ์ของชุมชน
เป้าหมาย
ส่วนนี้วางแผนกรอบเวลาเริ่มต้นสำหรับการบรรลุเป้าหมายที่กล่าวถึงของโปรเจ็กต์ การวางแผนเวลามีดังนี้
17 ส.ค. - 13 ก.ย.: การสร้างสัมพันธ์กับชุมชน:
- จัดการประชุมเพื่อกำหนดขอบเขตโครงการและการวางแผนการสอน ตลอดจนความคาดหวังจากทั้งผู้เขียนและที่ปรึกษา
- จับภาพรวมของซอร์สโค้ดฟิสิกส์การระเบิด
14 ก.ย. – 31 ต.ค.: ร่างบทแนะนำที่กล่าวถึงพร้อมการปรับเกณฑ์การค้นหาซ้ำๆ ระหว่างที่ปรึกษาและผู้เขียนผ่านการประชุม
1-30 พ.ย.: เขียนเอกสาร API สำหรับชั้นเรียนที่สำคัญที่สุดและรวบรวมเอกสารโดยใช้ Doxygen
1-5 ธ.ค.: เขียนรายงานโครงการ
หลังจาก GSoD 2020: ฉันต้องการติดต่อกับ Ignition Robotics เพื่อปรับปรุงและบำรุงรักษางานของตัวเองต่อไป
หมายเหตุสุดท้าย
จำเป็นต้องแก้ไข README.md ปัจจุบันในหน้าแรกของ Ignition Physics เนื่องจากการติดตั้งไบนารีที่ใช้ apt-get ใช้ไม่ได้ใน Ubuntu 18.04 ส่วนการติดตั้งต้นฉบับยังต้องแก้ไขเนื่องจากการจัดรูปแบบไม่ถูกต้อง