• [原][osgEarth][JSBSim]重新整理使用JSBSim飞机动力模拟的使用


    JSBSim是一个模拟飞机飞行空气动力学的,这些都不用深入理解,只要知道自己程序怎么和JSBSim交互就行了

    我使用的是JSBSim-Win32-0.9.13

    原理:改写jsbsim的FGInput 和FGOutput两个类

    使其能通过udp或者tcp与自己的程序进程通信,以实现自己程序通过网络端,发送控制命令并获取飞机姿态的目的。

    udp通信的例子:简单的udp通信

    进阶版udp和tcp通信的例子:基于winsocket2的TCPUDP使用例子

    JSBSim的简单介绍(转):飞行模拟软件JSBSim的操作(FGFCS类)

    JSBSim的使用--飞行控制组件及其配置

    实现的本端发送tcp飞机控制端 和 获取udp飞机姿态的部分:TCP|UDP与飞行模拟软件JSBSim的通信,现实模型飞行!

    实现JSBSim端部分:

    FGInput部分

     输入参数:

    fcs/aileron-cmd-norm normalized aileron command    规范化副翼命令    使飞机做横滚机动
    fcs/elevator-cmd-norm normalized elevator command   规范化升降舵命令
    fcs/rudder-cmd-norm       方向舵
    fcs/steer-cmd-norm        驾驶
    fcs/flap-cmd-norm        襟翼  基本效用是在飞行中增加升力,便于起飞降落
    fcs/speedbrake-cmd-norm      减速板,又称阻力板,飞机上用于增加阻力以减低飞行速度的可操纵面
    fcs/spoiler-cmd-norm        扰流器,通过上下摆动来调节飞机的飞行时速
    fcs/pitch-trim-cmd-norm    俯仰配平
    fcs/roll-trim-cmd-norm    旋转配平
    fcs/yaw-trim-cmd-norm    偏航配平
    gear/gear-cmd-norm      齿轮、传动装置
    fcs/left-aileron-pos-rad    副翼
    fcs/left-aileron-pos-deg
    fcs/left-aileron-pos-norm
    fcs/mag-left-aileron-pos-rad
    fcs/right-aileron-pos-rad
    fcs/right-aileron-pos-deg
    fcs/right-aileron-pos-norm
    fcs/mag-right-aileron-pos-rad
    fcs/elevator-pos-rad    升降舵
    fcs/elevator-pos-deg
    fcs/elevator-pos-norm
    fcs/mag-elevator-pos-rad
    fcs/rudder-pos-rad    方向舵
    fcs/rudder-pos-deg
    fcs/rudder-pos-norm
    fcs/mag-rudder-pos-rad
    fcs/flap-pos-rad    襟翼
    fcs/flap-pos-deg
    fcs/flap-pos-norm
    fcs/speedbrake-pos-rad    减速板
    fcs/speedbrake-pos-deg
    fcs/speedbrake-pos-norm
    fcs/mag-speedbrake-pos-rad
    fcs/spoiler-pos-rad      扰流板
    fcs/spoiler-pos-deg
    fcs/spoiler-pos-norm
    fcs/mag-spoiler-pos-rad
    fcs/wing-fold-pos-norm    机翼折叠
    gear/gear-pos-norm
    gear/tailhook-pos-norm    制动钩
    
    另加:
    fcs/left-brake-cmd-norm  刹车
    fcs/right-brake-cmd-norm
    fcs/center-brake-cmd-norm
    propulsion/starter_cmd    推进
    fcs/throttle-cmd-norm[0]    油门推杆

    FGOutput部分

    输出:

    position/long-gc-deg    经度
    position/lat-gc-deg    纬度
    position/h-sl-ft    高度
    
    attitude/roll-rad    
    attitude/pitch-rad
    attitude/heading-true-rad
    
    velocities/vc-kts    空速(节|海里/小时)
    velocities/h-dot-fps    爬升率(英尺/秒)
    velocities/v-north-fps    北向速度(英尺/秒)
    velocities/v-east-fps    东向速度(英尺/秒)
    velocities/v-down-fps    降速(英尺/秒)
    
    fcs/throttle-pos-norm
    fcs/elevator-pos-deg
    fcs/left-aileron-pos-deg
    fcs/right-aileron-pos-deg
    fcs/rudder-pos-deg
    
    inertia/weight-lbs
    inertia/empty-weight-lbs
    propulsion/total-fuel-lbs
    
    forces/fbx-prop-lbs
    forces/fby-prop-lbs
    forces/fbz-prop-lbs
    
    velocities/x-fps
    velocities/y-fps
    velocities/z-fps
    
    accelerations/xdot-ft_sec2
    accelerations/ydot-ft_sec2
    accelerations/zdot-ft_sec2
    
    fcs/left-gear-pos-deg
    fcs/right-gear-pos-deg
    fcs/head-gear-pos-deg
    fcs/left-flap-pos-deg
    fcs/right-flap-pos-deg
    fcs/left-elevator-deg
    fcs/right-elevator-deg
    fcs/left-rudder-deg
    fcs/right-rudder-deg

    本端多线程部分(发送和接受数据都是另开线程)

    本端开启关闭JSBSim进程部分:

    本端使用摇杆部分:

     摇杆基础:摇杆开发

  • 相关阅读:
    opencvsharp BitmapSource图片截取问题
    wpf RenderTargetBitmap保存控件为图片时图片尺寸不对的问题
    c# ??和运算符先后的问题
    wpf 窗口打开后默认设置控件焦点
    win10 requireAdministrator设置开机自启动无效的解决方案
    Gogs webhook钩子 验签 (PHP版本)
    MongoDB管理用户的认证机制
    RocketMQ使用指南及参数详解
    微信公众号h5获取用户openId的方法和步骤
    php中常用的正则表达式函数
  • 原文地址:https://www.cnblogs.com/lyggqm/p/8422394.html
Copyright © 2020-2023  润新知