咨询热线:

187 - 6397 - 2757

当前位置: 首页 > 新闻列表 > 编程与游戏结合

我们是山东少儿无人机编程,我们也能用编程实现无人机的“精确制导”能力『济南少儿编程_山东少儿编程_少儿编程』

    作为家长们一听到“精确制导”就感觉很不可思议,因为精确制导都是应用于导弹上,而我们编程如何实现精确制导呢?

    就以我们无人机为例,我们无人机可以通过编程实现无人机的自动启飞、人脸识别、智能跟随等技术,当然还有定点巡航,比如我们通过编程设置我们无人机早晨9点进行起飞,起飞之后可以根据我们的坐标轴让飞机飞到指定位置,进行拍照,将拍照的图传信息发送回来,供我们参考。当然如果让我们无人机编程添加上精确制导的程序又该能做到什么效果呢?是不是特别好奇呀?今天我们就开始实验了,当然我们也是模拟,同学们仔细学哦!

    模拟之前先看一个同学给无人机编写程序吧,让我们无人机自动起飞吧!

    看完之后是不是不够看的呀?想看多架无人机一起起飞呢?那就再往下看吧

    是不是很炫酷呀?同学们,现在想不想学习无人机编程呢?

    接下来我们就开始今天的文章了“精确制导”,首先看下效果图:   

山东少儿无人机编程,看编程如何让无人机具备“精确制导”能力『济南少儿编程_山东少儿编程_少儿编程』(图1)

    本篇文章重点:

        1:自动选择目标

        2:自动追踪目标,而且运动轨迹是弧形的。

    第一步:上传无人机。(前提:打开速云少儿编程 - 创作云平台 http://it.itchilds.com

山东少儿无人机编程,看编程如何让无人机具备“精确制导”能力『济南少儿编程_山东少儿编程_少儿编程』(图2)

    第二步:上传敌机:

山东少儿无人机编程,看编程如何让无人机具备“精确制导”能力『济南少儿编程_山东少儿编程_少儿编程』(图3)

    是不是敌机也很酷?

    导弹如何选择目标

    如果想让导弹选择目标,那么就必须要有一个可选择的记录库,和选择的标准,所以,当导弹发射的一瞬间,我们需要知道天上有多少敌机,以及他们之间怎么区别的,只有具备这些条件,你才有选择的基础。所以为了选择目标,我们就必须创建一个列表,这个列表里就包含了所有在天空中出现的敌机。只要在这个列表里进行选择就好了。

    那这个列表里存的什么数据呢?存的就是一个一个敌机的编号。所以我们在克隆敌机的时候,需要为每一个敌机进行编号,否则就无法对敌机进行一一的识别,更谈不上选择了。

山东少儿无人机编程,看编程如何让无人机具备“精确制导”能力『济南少儿编程_山东少儿编程_少儿编程』(图4)

    这是敌机开始的一段程序,为了让敌机在舞台的高处随机的出现,但是在出现的同时,用“敌机编号”这个私有变量对敌机进行编号。同时把这个敌机编号加入到{敌机队列}这个列表里。

    但是如果敌机消失在舞台边缘,或者被击毁和撞毁,那么它就不再是目标了,就需要从目标的库里删除掉,也就是从{敌机队列}里删除掉。

山东少儿无人机编程,看编程如何让无人机具备“精确制导”能力『济南少儿编程_山东少儿编程_少儿编程』(图5)

    这段代码不难理解,就是敌机在飞行过程中,如果被导弹击中,就播放爆炸效果。然后不论是那种情况消失,都需要从敌机队列里删除这个编号。删除完之后,如果队列里还有敌机,那么就选择队列的第一项,也是队列里出现最早的飞机。如果删除完之后队列里没有项目了,就说明飞机已经被打光了,所以要把目标敌机这个变量设为0。

    我们就用“目标敌机”这个变量来代表此时此刻被导弹锁定的敌机!

    如果目标敌机为0了,也就是没有敌机了,那么下面一刻新克隆出来的敌机就自动成为当前的目标敌机。

山东少儿无人机编程,看编程如何让无人机具备“精确制导”能力『济南少儿编程_山东少儿编程_少儿编程』(图6)

    当然,既然知道了目标敌机是谁,那肯定无时不刻都要盯紧它,要实时锁定它的物理方位才能进行攻击!

山东少儿无人机编程,看编程如何让无人机具备“精确制导”能力『济南少儿编程_山东少儿编程_少儿编程』(图7)

    导弹飞行过程中跟踪敌机

    敌机的坐标锁定了,但是导弹怎么跟踪它呢?这个x和y坐标可是随时在发生变化,而不是固定在那里让我打。那你的运动轨迹如何跟踪一个实时变动的目标呢?

    一种方法:根据双方的X和Y坐标来算角度,这就是几何了,大家可以画画图试一下怎么计算,小云认为这也是一种不错的方法呢。

    还有一种方法就是用现有的命令,

山东少儿无人机编程,看编程如何让无人机具备“精确制导”能力『济南少儿编程_山东少儿编程_少儿编程』(图8)

    但是问题是这只能面向一个角色,不能面向一个克隆体呀,怎么办?老办法,引入影子目标角色,也就是用另一个隐形的角色,实时的移动到目标的X,Y坐标上,充当靶子。只要导弹面向这个角色,就相当于面向了目标,只要实时去用面向这个命令来校准,那导弹就始终是往目标的地方追。

山东少儿无人机编程,看编程如何让无人机具备“精确制导”能力『济南少儿编程_山东少儿编程_少儿编程』(图9)

    这就是这个影子角色,为什么不随便用个圆圈或小点代替,是因为我们要做碰撞检测的,所以只有影子目标的造型和真实目标的造型一模一样,才能完美的检测是否真正击中目标。另外涂这一下子是为了调试程序用的,否则都长一样,神仙也区分不出哪个是真身哪个是影子呀。

山东少儿无人机编程,看编程如何让无人机具备“精确制导”能力『济南少儿编程_山东少儿编程_少儿编程』(图10)

    为什么不用隐藏,而用虚像99,这两个的基本效果都是一样的,都是让你看不见,但是区别是隐藏了就检测不到碰撞了,而虚到99,那虽然你看不见,但是计算机看得见,也就是碰撞检测不受影响。对于这段程序就是目标角色会始终盯住目标战机的位置,任劳任怨的充当导弹的靶子。山东少儿无人机编程,看编程如何让无人机具备“精确制导”能力『济南少儿编程_山东少儿编程_少儿编程』(图11)

    飞机上不同的位置开始着火,就能充分表现这一点,后来加上去发现效果还不错。

    好了,同学们,你们学会编写“精确制导”了吗?

    这个时候,家长们你还认为编程就是给孩子增加一个兴趣吗?"编程"+"数学"结合,巧解奥数题 - 水手分椰子,作为家长的你会吗?(图11)"编程"+"数学"结合,巧解奥数题 - 水手分椰子,作为家长的你会吗?(图12)"编程"+"数学"结合,巧解奥数题 - 水手分椰子,作为家长的你会吗?(图12)"编程"+"数学"结合,巧解奥数题 - 水手分椰子,作为家长的你会吗?(图12)

    计算机是不是很强大呀!但前提是你要会编程呀!只有会编程,你才能让计算机替你解决问题呀!别担心,编程其实也没有想象那么难!只要你愿意学。小云解读:如何通过编程解决数学题 - 求数值累加之和(图3)小云解读:如何通过编程解决数学题 - 求数值累加之和(图4)小云解读:如何通过编程解决数学题 - 求数值累加之和(图4)

    当然,无人机编程就更加深奥,比如我们看下面的视频吧!

    无人机能六架一起起飞?没错!那他又和数学有什么关系呢?

    小云说啦!这是根据我们数学中的坐标轴的 x轴 y轴 初始化无人机位置,无人机与无人机之间的距离、架数的多少,全部需要通过精密的计算,否则无法编排出理想的造型

    现在作为家长的你!还在纠结无人机编程是否对孩子有帮助吗?

无人机编程能做什么?人脸识别?智能跟随?自动飞行?还有吗?

答案:有!那就是"无人机编舞"!不知道无人机如何编舞?快看下面我们速云小童鞋的无人机编舞吧!!


    无人机编程都学习哪些内容呢?

       让无人机与编程结合?

没错!就是要让孩子“动手”+“编程”实现无人机起飞。

重点培养孩子逻辑思维能力与动手操作能力,让孩子在编写无人机程序的时,无形的锻炼孩子的逻辑思维能力和前沿科技的运用能力,在飞行学习中,孩子们需了解飞机的机械结构,练习手眼协同能力,甚至自己组装飞行器;在编程中,无人机可以在三维空间中,用摄像头完成巡线、人脸识别等人工智能任务。

例如:人脸识别,智能跟随,红外线定稿,光流定位、无人机编舞等。


无人机编程(图1)



当你的孩子还在学习机器人编程时,别人家的孩子却已经学习起了“无人机编程”(图7)

看我们小童鞋们上课视频吧

    坦克编程都学习哪些内容呢?

    动手组装”+“编写程序”

    通过编程将抽象理论与实践操作合二为一,让孩子重新理解知识,体验人工智能,培养独立思考的习惯和动手解决问题的能力。

    课程涉及机器人拼装、力学等数理知识,运用六类人工智能模块,编写专属的自动驾驶算法程序,让孩子更加深入理解人工智能技术。

    例如:人脸识别、智能跟随等前沿技术。


当你的孩子还在学习机器人编程时,别人家的孩子却已经学习起了“无人机编程”(图8)


当你的孩子还在学习机器人编程时,别人家的孩子却已经学习起了“无人机编程”(图9)

在线客服
热线电话

微信公众账号

在线购课

微信客服