python代码实现无人机控制学习笔记

quad_sim.py

1.signal模块 通信模块

linux系统的通信基础 linux简单通信基础 linux系统中内核通过信号(signal)对进程进行作出指令,信号发出-等待-执行

python中的signal模块用来处理python进程中的信号 signal模块

signal.signal(signal.SIGINT, signal_handler) 使用signal.signal()函数来预设(register)信号处理函数

例如 singnal.signal(signalnum, handler)

signalnum为某个信号,handler为该信号的处理函数。我们在信号基础里提到,进程可以无视信号,可以采取默认操作,还可以自定义操作。当handler为signal.SIG_IGN时,信号被无视(ignore)。当handler为singal.SIG_DFL,进程采取默认操作(default)。当handler为一个函数名时,进程采取函数中定义的操作。

signal包的核心是设置信号处理函数handler.

2.sys模块 python自带模块 sys模块 包含很多函数

sys.exit([arg])  程序中间的退出, arg=0为正常退出 
一般情况下执行到主程序末尾,解释器自动退出,但是如果需要中途退出程序,可以调用sys.exit函数,带有一个可选的整数参数返回给调用它的程序,表示你可以在主程序中捕获对sys.exit的调用。(0是正常退出,其他为异常)当然也可以用字符串参数,表示错误不成功的报错信息。

sys.stdout 表示标准输出流   

sys.stdout.flush表示刷新输出  参考

3.argparse模块  python用于解析命令行参数和选项的标准模块 参考1 参考2

quadcopter.py

4.scipy.integrate python中的积分工具,分为对函数公式积分和对采样数值积分。 参考

5.time模块  参考  注重时间

time() 模块继承自 Object 类,datetime() 模块继承自 Object 下面的 Date() 模块。

time 提供的功能更加接近于操作系统层面,其所能表述的日期范围被限定在 1970 - 2038 之间,如果要处理更广的日期,那需要使用 datetime 模块。

6.datetime模块 参考 注重日期

7.threading模块  参考

threading提供了一个比thread模块更高层的API(应用程序接口)来提供线程的并发性。这些线程并发运行并共享内存。

threading.Thread(target=self.thread_run,args=(dt,time_scaling))

Thread 是threading模块中最重要的类之一,可以使用它来创建线程。

gui.py

8.matplotlib.pyplot模块

是一个绘图命令,与MATLAB中的plot类似 参考

9.mpl_toolkits.mplot3d.axes3d模块 

3D绘图模块,并对图像的属性进行处理  参考

源代码

猜你喜欢

转载自blog.csdn.net/AndesStay/article/details/81623972