منصوبے کے بارے میں
یہ ریپو ایک فلائی کنٹرول مکمل اسٹیک ملٹی ریپو شیل پروجیکٹ (Umbrella) ہے، جو git submodule کے ذریعے 9 آزاد ذیلی ریپوزٹریز کو شامل کرتا ہے، اور مجموعی آرکیٹیکچر، انجینئرنگ دستاویزات اور انٹیگریشن طریقوں کو مرکزی طور پر منظم کرتا ہے۔ ذیلی ریپوزٹریز آزادانہ طور پر تیار ہوتی ہیں، جبکہ شیل پروجیکٹ صرف ورژن سنیپ شاٹس اور دستاویزات ریکارڈ کرتا ہے۔
انجینئرنگ کے اجزاء میں شامل ہیں:
- flyctrl/:فلائی کنٹرول فرم ویئر (Rust no_std، بشمول EKF، PID، فلائٹ موڈز، FDIR، MAVLink اپلنک)
- fly-simulater/:فزیکل سمیولیشن پلیٹ فارم (fly-sim-core، بشمول plant، controller، sensor، wind، SIL)
- mcu_simulater/:MCU انسٹرکشن لیول سمیولیٹر (Unicorn STM32F407 + ورچوئل پیری فیرلز I2C/UART/USB)
- joc-base/:RTOS کرنل + بورڈ سپورٹ (STM32F407 minimal، فرم ویئر ELF بیس، dev برانچ)
- joc-rtos-app-sdk/:ایپلیکیشن SDK (Rust no_std، لاگ/ڈیوائس/ٹاسک، 180B لاگ بفر)
- mavlink-core/:MAVLink انکوڈنگ/ڈی کوڈنگ (فریم/اینیوم/COMMAND_LONG)
- physics/:فزکس انجن phy-sdk (fly-sim-core کا اختیاری انحصار، SIL حقیقی فزکس)
- groundctrl/:گراؤنڈ اسٹیشن (Rust)
- joc-drvtest-app/:ڈرائیور ٹیسٹ ایپلیکیشن (پیری فیرل ڈرائیور ڈی بگنگ)
فوری آغاز:
1. سب موڈیولز کو انیشیالائز کریں: `git submodule update --init --recursive`
2. فرم ویئر بنائیں: `./scripts/build.sh real-sensors` یا `./scripts/build.sh hil`، آؤٹ پٹ /tmp میں ہوگی
3. ایک کلک ریگریشن: `./scripts/verify.sh`
4. ایک کلک انٹیگریشن: `./scripts/integrate.sh` (سب) یا مخصوص مراحل جیسے `unlock`، `firmware` وغیرہ
سب موڈیول URLs SSH فارم میں ہیں، کراس مشین کلوننگ کے لیے SSH کلیدی اجازت درکار ہے۔ اگر file transport کی خرابی ہو تو `git -c protocol.file.allow=always submodule update --init --recursive` استعمال کریں۔
انٹیگریشن آؤٹ پٹ پاتھ کنونشن: پہلے ماحولیاتی متغیرات (جیسے JOC_BASE_ELF، JOC_APP_FLYCTRL) استعمال کریں، پھر شیل پروجیکٹ کا معیاری لے آؤٹ (جیسے joc-base/build_hil/stm32f407_minimal.elf)، آخر میں تاریخی پاتھ۔ نئی مشین کا عمل: سب موڈیول انیشیالائز → فرم ویئر بنائیں → تمام انٹیگریشن چلائیں۔
ورژن سنیپ شاٹ شیل پروجیکٹ کے ذریعے مقفل ہے، سب موڈیول کمٹ `git submodule status` سے دیکھے جا سکتے ہیں، اور آگے بڑھنے کے بعد شیل پروجیکٹ میں نیا سنیپ شاٹ ریکارڈ کریں تاکہ دوبارہ تیاری ممکن ہو۔
دستاویزات کا رہنما:
- docs/architecture.md:مجموعی آرکیٹیکچر (تین سطحی سمیولیشن اسٹیک/ڈیٹا فلو/ذمہ داریاں)
- docs/engineering.md:ہر انجینئرنگ کی تفصیلی وضاحت
- docs/integration.md:انٹیگریشن طریقے (ورچوئل پیری فیرلز/SIL/HIL/فالٹ انجیکشن/انلاک فلائٹ)
- docs/postmortem-rtos-pendsv-fallback.md:PendSV خالی قطار فال بیک ڈیفیکٹ فکس کا جائزہ
- scripts/integrate.sh:ایک کلک انٹیگریشن اسکرپٹ
- scripts/verify.sh:ایک کلک ریگریشن اسکرپٹ
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.