物联网挑战赛【从零到一】

物联网挑战赛

主要自学链接参考以下



前言

此篇博客:
从基础内容到进阶代码实验,手把手教你进阶物联网挑战赛。


提示:学习内容均来自各大网页转载,可供参考

一、物联网挑战赛基础介绍

1.物联网平台说明文档某风吾起 CSDN

2.nesC编程入门ZYVV 博客园

3.TinyOS编程思想和Nesc基础语法wangzihao 博客园

4.赛前准备资料晚风微凉 CSDN (vip)

二、TinyOS操作系统

1.TinyOS编程某风吾起 CSDN

2.操作系统介绍灵思致远 CSDN

3.tinyos 官方文档TinyOS Documentation Wiki

二、博主实验

1.点对点 串口 通信某风吾起 CSDN

2.BlinktoRadio 点灯「已注销」 CSDN

三、Serial代码、组件介绍

1.接口和组件介绍博乐Bar CSDN

2.SerialCcenpengtao CSDN

四、教学视频

1.挑战赛教学视频令月二十二 bilibili

五、部分题目

1. 2021 题目晚风微凉 CSDN

2. 2019题目社区 CSDN

3.练习题

练习题(共1题,总分100分)
赛题:
所有节点不安装天线,已知0号点位于左上角,其他11个节点ID号随机未知(介于1-255),参赛队需编写所有节点的代码,完成节点间的信息传递,最终0号节点打印输出未知的11个节点的ID号。

注意:
112各节点只允许编写一份代码,节点可通过宏TOS_NODE_ID获取自身ID号;
2)代码烧录完毕10秒后停止评分;
3)不安装天线时,参赛队需考虑节点的通信距离;
4)评分时不核查代码的逻辑,仅以最终的节点输出作为判分依旧;

计分规则:
本赛题满分为100分,其中正确性得分55分,开销得分(正确性得分在45分以上才可以获取开销分得分)45分: 
正确性得分(55分): 5× n         (n为输出正确ID的个数 )
开销分得分(45分):(1800-m)/3810<m<200,m为11个节点的发包数总和)
	其中 m <10时,开销分得分为45分;m>200时,开销分得分为0分;

格式说明:
10号点结果打印格式: Data + 11个ID号(10进制,空格隔开,顺序不限)
例如: Data  1 3 5 6 7 8 10 20 12 33 44 
2)参赛队需在输出结果的printf语句后加入”\n”换行符,以表明语句的完结;
3)结果可多次重复输出,但计分时只会取0号节点输出的最后一组携带有Data标志位的语句进行核算,且只会取前11位ID号进行计算,错误、重复的ID号皆不得分,顺序可颠倒;
如存在的 ID为:1 2 3 4 5 6 7 8 9 10 11时
参赛队答案1:Data 2 1 3 4 5 6 7 8 9 10 11   (正确11个,正确性得分55分)
参赛队答案2:Data 1 2 3 5 4 6 7 8 9 10   (正确10个,正确性得分50分)
参赛队答案3:Data 1 2 3 4 5 6 7 8 9 10 10  (正确10个,正确性得分50分)
参赛队答案4:Data 1 2 3 4 5 6 7 8 9 10 11 12 13 (正确11个,正确性得分55分)
参赛队答案5:Data 1 2 3 4 5 6 7 8 9 10 12 (正确10个,正确性得分50分)

评分步骤:
	编译烧录参赛队代码(所有节点);
	对0号节点进行Printf监听,并开始计时;
	10秒后停止监听,核实0号点输出结果,计算出得分;

疑问解答:
问题1:怎么设置节点的ID号?
在平台上,有设置节点的按钮,点击即可设置为任意节点编号。
问题2:不安装天线时,对节点有什么影响?
不安装天线时,由于节点实际物理位置空间的不同,其通信的距离也各不相同,无法直接确定各节点的通信范围,参赛队需考虑网络的随机性和多跳传输等问题。
问题3:怎么计算自己发了多少数据包(开销计算问题)?
	参赛队可在自己的发包语句后加上计数值,并打印出来,但需注意,分发和汇聚协议的底层路由包的计数此方法无法直接输出。


总结

初步介绍了物联网挑战赛的初学者如何入门已经给出学习资料,若有更好的学习资料,请于评论区分享留言

本文初步介绍了物联网挑战赛部分资料以及各位大佬博主的文章,文章均注明出处与链接,若侵权,请系删,若转载请注明出处。


版权声明:本文为m0_63499399原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。