智能机器人避障功能实现代码 单片机如何才能算掌握好?

[更新]
·
·
分类:互联网
2684 阅读

智能机器人避障功能实现代码

单片机如何才能算掌握好?

单片机如何才能算掌握好?

对于题主的困惑,想要深入单片机,学得更明白的话,谈谈我是怎么做的吧。
1. 51入门单片机很好,已经明白寄存器原理就OK,说明程序中的代码对IO口在做什么事情至少是清楚的。datasheet看不懂,为什么?因为不知道看哪里和怎么看。
看哪里呢?不管是中文还是英文文档,几百页从头看到尾那简直是疯了~ 所以需要有目的性地看,也就是说要带着问题看文档,比如你遇到操作舵机,舵机有自己的时基脉冲,脉冲宽度多少表示多少角度?怎么产生PWM,怎么改变脉冲?这些问题都需要看datasheet,舵机的手册会告诉你它的产品脉冲和角度的关系;单片机的手册会告诉你怎么生成PWM,怎么自己修改脉冲宽度。去目录里找相应问题可能的位置就好啦。
那怎么看呢?通常手册都会有图或者图表文字的形式展示给你它的外设框图,图中一般会写出寄存器的名称甚至操作位和寄存器位段之间的联动关系,根据上下文的描述看着图很容易就能明白要怎么操作了。
2. 为什么总要看着别人的理解才能试着做呢,拿了新的外设还是不知道如何开始动手呢?因为没有产生自己的新想法。外设功能,无非就是让单片机对IO口的操作来完成,不论是关于调整波形、实现通信协议还是基本的电平变化。这些操作都是可以看到实现效果的,而效果很关键,你做一个东西至少要让出来的东西符合自己的预期吧。而通常一个外设可以直观地想象出能拿来做什么。
比如一个人体红外模块,它可以感知生物的热红外,而它做出的反应就是输出一个电平告诉你它识别到相应东西了,不需要你了解红外PIR探头怎么反射捕获的,感应信号如何运算放大,耦合再放大... 拿到电平你可以做很多事情,接灯、蜂鸣器、电动门、风扇、自动洗手池...超乎你想象的应用场景。
知道应用场景了,我们从程序设计出发,看看改动一些逻辑能在IO产生什么新的现象,为什么能发生,还能怎么改动?这样在程序运行结果上给你的反馈能大大加强参与感,获得不断的乐趣,探索新的设备使用,对单片机平台作更深入的应用。
3.单片机还是属于偏软件层面的编写,必要时需要自己画PCB板子,并焊接使用。如果题主希望向硬件方面,电子这一块发展,模电还是相当重要的,解释了很多电气电路的使用原理和适应的使用范围。在产品电路设计乃至画板时会起很大作用,感兴趣寒假好好利用看看自己是不是能坚持电子电路这一块也不错哒。
我在CSDN的博客,会不时记录下开发中的经历,欢迎来访哟
_kanly
祝学业有成!

目前的人工智能离可以自己给自己写代码编程还有多远?

聊聊自己的看法,由于自身局限性无法给楼主一个答案。
楼主说的这种人工智能属于具有自主意识的人工智能,我觉得肯定是可以实现的,但是通过现有的比如深度学习这种是达不到的。
要实现真正的智能,现在来看无非两种路子,一种走仿生学,去了解智能的生物机理,然后模拟出一个智能。另一种就是通过纯算法,毕竟进化的出来的功能不一定是最优的,简单的例子就是飞机会飞但不需要像老鹰一样扑腾翅膀。
现有的open swam项目就是针对第一种方案的。科学家通过计算机来模拟线虫,线虫的结构简单,但是也具有了一定神经或者智能属性比如趋利避害。第一阶段,科学家使用计算机来模拟线虫的302个神经元和95个肌肉细胞,最终的目标是希望模拟它的全部959个细胞,但是结果却不是很乐观。虽然模拟了神经元,但是对却没法搞清楚神经元上的突触是抑制性的还是兴奋性的,一些突触的权重也是通过机器学习来拟合出结果的,这种结果自然不会有什么太大的价值。由此可见,我们在智能机理的研究上还只是婴幼儿水平。
那么第一条路子似乎不太好走,最近各种人工智能言论又甚是流行,似乎第二条算法路子很有希望。可惜的是,也并不。虽然说,任何问题本质上可能都是算法问题,扫地机器人是一个线路规划,寻路和避障的问题,车牌识别是模式识别得到。但是,就像现在很多商业课程里面提到的,如何定义问题是一个人分析问题能力的一个很重要的维度。一样的,对于计算机而言如何数字化的定义一个问题也是能否解决好这个问题的一个关键。显然现在大部分的问题并不能被很好定义。比如,如何数学的定义这张照片是风景照还是人像照。没有准确的定义,就意味着没有准确的模型(大概率不会有),也就无法评估模型的有效性,所以最后就变成大量依赖于深度学习这种黑箱来解决问题。但是深度学习这种事情,更像是太上老君的丹炉,不到最后不知道出来的是孙悟空还是丹。
所以像语义分析这种比较难定义的类型,现在的发展都比较缓慢,而像下棋这种具有明确规则的,相对来说发展就快了不少。几年前的阿法狗也因此带红了这个领域。这也导致了现在的一些现象,基本归结为越懂的越悲观,越不明白的越乐观。去年就有个例子,Facebook人工智能项目出了个bug,媒体居然就开始报道人工智能发展了语言能力,能够进行自我沟通了。
所以,现在我们应该还在智能的很早期,现在做的大部分是算力和数据的堆砌,本质上的进展不是很大。至于什么时候能到达楼主说的那种自主辨识并且学习的境界,个人觉得还有很长的路要走。
答题不易,发现有用,欢迎点赞转发收藏