源程序
抢答器完善版.rar
演示效果
演示效果.rar
根据论坛题目要求:先整理一下题目里面需要的一些输入输出点数。

后面增加了一些分数相关的功能,比如增减分,排名等。
PLC选择目前手头上有的S7-200SMART SR60,由于输出点数不够用,需要增加EM DR08继电器模块。
程序一共包括主程序、加减子程序、抢答子程序和排名子程序。
1、上电初始化,将分数、排名和状态灯初始化
2、做了一个显示是哪个工位抢答成功的变量,复位的时候,清零

3、主持人按钮按下后,三个绿灯依次间隔1s点亮;测试时,主持人按钮按下,三个绿灯同时亮。

4、做了一个8个工位可以复用的子程序。用于判断是否抢答成功或者抢答错误。
每个工位的抢答按钮都做了自锁功能,防止接触时间短或者中间有松开,保证按钮按下去过,会一直有信号。
另外对本身抢答错误和其他工位抢答成功(这个是在子程序外面做的,子程序变量个数有限制)做了互锁,保证只有一个工位可以抢答成功。


5、另外做了加减分程序。哪个工位抢答成功了,就会把工位号传给一个变量。作为人机界面显示谁抢答成功的工位号。
只有抢答成功后,回答之后,主持人判断回答的正确与否,判断加减分。


6、增加了一个原始分数转移到排名分数子程序

7、操作完加减分之后,对现有的分数进行排序。
8、调用一下加减分和排名子程序。写了分数和排序清零程序。方便下场比赛使用。

之前写的程序,排名的时候有个漏洞,工位排名靠前的工位,分数相同时,会排在前面,现在的程序写的是分数相同时,谁先到得的分数,谁靠前。
做了个UI界面,
