? ?

重慶時時歷史開獎記錄重慶時時個人位走勢圖-xn--ghq47xl6bz9c8van06h65mlq4a.4cscaffold.com

google seo -> telegram: @ehseo6

">Newsnet 2022-09-25 00:31
  • home  >   /克拉玛依来幼偶电子有限公司  >   重慶時時歷史開獎記錄重慶時時個人位走勢圖
  • 彩視附加題怎么添加蘋果試玩平臺 信譽最好的娛樂平臺
    克博棋牌 牛大亨棋牌開發公司
    老重慶實時走勢圖012路 how about 重慶時時歷史開獎記錄重慶時時個人位走勢圖?
    What's the 重慶時時歷史開獎記錄重慶時時個人位走勢圖 phone number? What is 重慶時時歷史開獎記錄重慶時時個人位走勢圖 contact information ?
    Online consultation 重慶時時歷史開獎記錄重慶時時個人位走勢圖 The picture of the 重慶時時歷史開獎記錄重慶時時個人位走勢圖
    重慶時時歷史開獎記錄重慶時時個人位走勢圖of the video Is 重慶時時歷史開獎記錄重慶時時個人位走勢圖 for real ?
    重慶時時歷史開獎記錄重慶時時個人位走勢圖's website A map of 重慶時時歷史開獎記錄重慶時時個人位走勢圖
    重慶時時歷史開獎記錄重慶時時個人位走勢圖 of tiktok 重慶時時歷史開獎記錄重慶時時個人位走勢圖music
    重慶時時歷史開獎記錄重慶時時個人位走勢圖 of news 重慶時時歷史開獎記錄重慶時時個人位走勢圖app
    重慶時時歷史開獎記錄重慶時時個人位走勢圖company Customer service of 重慶時時歷史開獎記錄重慶時時個人位走勢圖 company

    亚博电竞|亚博app下载网站|亚博体育平台网

    亚博电竞|亚博app下载网站|亚博体育平台网

    ?
    首页 上一页 1 2 下一页 尾页

    ?用1500plc及hmi制作随机抽奖程序 ?点击:1993 | 回复:35

    ?

    小古gg

      ?
    • 精华:1帖
    • 求助:0帖
    • 帖子:1帖 | 3回
    • 年度积分:75
    • 历史总积分:516
    • 注册:2022-09-25
    发表于:2022-09-25 01:10:08
    楼主

        今年马上结束了,单位又要举行年会,抽奖活动必不可少,制作一个抽奖软件一般都是IT人员的工作,身为一个工控人,怎么能谦让呢,今年用西门子1500plc+HMI制作一个抽奖程序,年会现场没有硬件,于是使用西门子的plcsim仿真加电脑屏幕投影。

    使用软件版本TIA15.1

    功能:随机抽取人名,随机抽奖,被抽取的人和奖品不在出现,最后可将结果保存在电子表格内,抽奖人数最大99人,

    画面一,欢迎界面

    触摸屏和plc程序代码:(详细可下载附件查看)

    //Check_Fild

    Dim FSO ,Myfile  'FSO:访问系统文件的一个对象,Myfile:访问文件

    Set FSO=CreateObject("scripting.filesystemobject")   '创建访问系统文件

    If FSO.FileExists("C:\Storage Card SD\Logs\2021NewYearParty.csv")=True Then     '如果存在文件

    Call Write_Date'调用write_date函数

    Else

    Set Myfile=FSO.CreateTextFile("C:\Storage Card SD\Logs\2021NewYearParty.csv")'利用creat方法创建文件,并将对象返回到Myfile中

    Myfile.WriteLine "编号,时间,人名,奖品"'利用writeline函数对新建的文件写入表头

    Myfile.Close'关闭文件

    Call Write_Date'调用write_date函数

    Set Myfile=Nothing'释放对象

    End If

    Set FSO=Nothing


    End Sub


    //Delete_File

    Dim FSO

    Set FSO=CreateObject("scripting.filesystemobject")

    If FSO.FileExists("C:\Storage Card SD\Logs\2021NewYearParty.csv")=True Then    '检查如果文件存在,然后

    FSO.DeleteFile ("C:\Storage Card SD\Logs\2021NewYearParty.csv") '删除文件

    End If

    Set FSO=Nothing

    End Sub



    //Write_Date

    Dim FSO,MyFile   'FSO:访问系统文件的一个对象,Myfile:访问的文件

    Set FSO=CreateObject("scripting.filesystemobject")   'set语句创建访问系统的对象并用set进行对象引用

    Set MyFile=FSO.OpenTextFile("C:\Storage Card SD\Logs\2021NewYearParty.csv",8)'利用OpenTextFile函数打开指定文件,并用Myfile进行对象引用

                                                     'OpenTextFile参数说明:(“文件路径”,打开模式【1:只读 2:写 8:在最后一行写入】)

    MyFile.WriteLine MyFile.Line-1&","&Time()&","&SmartTags("HMI_随机人名显示")&","&SmartTags("HMI_随机奖品名显示")

                                                                    '将编号、时间、人名、奖品名变量写入到Excel文件中

    MyFile.Close'关闭文件

    Set FSO=Nothing'释放对象

    Set MyFile=Nothing



    End Sub

    //开机时初始化

    IF "FirstScan" THEN

        #抽奖次数 := 99;

        #中奖人 := 101;

        "确认" := 1;

        "复位提示" := 1;

    END_IF;


    //复位中奖人单和奖品名背景色

    IF "抽奖重新开始" THEN

        FOR #i := 0 TO 99 DO

            "HMI".中奖人名变色[#i] := 0;

            "HMI".中奖奖品变色[#i] := 0;

        END_FOR;

    IF #人数 > 99 THEN    //抽奖人数不能大于99人

        #人数 := 0;

        #中奖人 := 103;   //103表示人数超上限

        

    END_IF;


    #R_TRIG_Instance_2(CLK:=#RESET OR "FirstScan" , //数列复位

                       Q=>#R_TRIG_Instance_2.Q);

    IF #R_TRIG_Instance_2.Q THEN                    

        FOR #j := 0 TO 109 DO

            #站队[#j] := #j + 1;

        END_FOR;

        #n := 20;

        #中奖人 := 102;       //102代码表示请抽奖

        #抽奖次数 := 0;

        "抽奖" := 0;

    END_IF;



    FOR #i := 0 TO 99 DO                     //序列重新排队

        IF #站队[#i] > #站队[#i + 1] THEN

            #战队temp := #站队[#i];

            #站队[#i] := #站队[#i + 1];

            #站队[#i + 1] := #战队temp;

        END_IF;

    END_FOR;



    #R_TRIG_Instance(CLK:=#抽奖,               //点击抽奖

                     Q=>#R_TRIG_Instance.Q);

    IF #R_TRIG_Instance.Q THEN

        #中奖人 := #站队[#n];

        #n_timp := #n;

    END_IF;


    #中奖人名 := "抽奖人名单".中奖人名单[#中奖人 - 1];


    #随机人 := #站队[#n];


    #R_TRIG_Instance_1(CLK := #确认,               //对抽奖结果确认

                       Q => #R_TRIG_Instance_1.Q);

    IF #R_TRIG_Instance_1.Q THEN

        #站队[#n_timp] := 100;

        #中奖人 := 102;           //等待抽奖

        #抽奖次数 := #抽奖次数 + 1;

    END_IF;


    #n := #n + 1;//随机数,因博图中无随机数,所以采取让n快速自增的方法。

    IF #n >= #人数 - #抽奖次数 THEN

      #n := 0;

    END_IF;



    IF #抽奖次数 >= #人数 THEN     //抽奖次数大于人数时,提示抽奖结束

        #中奖人 := 101;            //101表示抽奖结束

    END_IF;



    END_IF;

    //中奖人单背景变色

    IF "中奖人" < 100 THEN

        IF "抽奖" = 1 THEN

            #j := "中奖人";

            "HMI".中奖人名变色[#j] := 1;

        END_IF;

        #n:= "中奖人";

        IF "再给次机会"=1 THEN

          

            "HMI".中奖人名变色[#n] := 0;

        END_IF;

    END_IF;


    //中奖奖品名背景变色

    IF "中奖名" < 100 THEN

        IF "抽奖_JP" = 1 THEN

            #j := "中奖名";

            "HMI".中奖奖品变色[#j] := 1;

        END_IF;

        #n := "中奖名";

        IF "再给次机会_JP" = 1 THEN

            

            "HMI".中奖奖品变色[#n] := 0;

        END_IF;

    END_IF;


    //HMI显示块

    //"随机显示人名"

    IF "抽奖" = 0 THEN

        "HMI".随机人名显示 := "抽奖人名单".中奖人名单["随机人" - 1];

    ELSE

        "HMI".随机人名显示 := "抽奖人名单".中奖人名单[ "中奖人"- 1];

    END_IF;


    //"随机显示奖品名"

    IF "抽奖_JP" = 0 THEN

        "HMI".随机奖品名显示 := "奖品名单".中奖人名单["随机奖品" - 1];

    ELSE

        "HMI".随机奖品名显示 := "奖品名单".中奖人名单["中奖名"- 1];

    END_IF;


    //检查人名单是否有重名

    FOR #a := 0 TO 98 DO

        FOR #b := #a+1 TO 99 DO

            IF "抽奖人名单".中奖人名单[#a] = "抽奖人名单".中奖人名单[#b]

                AND "抽奖人名单".中奖人名单[#a] <> #no_name THEN

                "抽奖人名单".中奖人名 := "抽奖人名单".中奖人名单[104];

                "HMI".相同人名报警 := 1;

          //  ELSE

             

            END_IF;

        END_FOR;

    END_FOR;

    IF "抽奖人名单".中奖人名 <> "抽奖人名单".中奖人名单[104] THEN

        "HMI".相同人名报警 := 0;

    END_IF;


    //统计人名单人数

    #c := 0;

    FOR #d := 0 TO 99 DO

        IF "抽奖人名单".中奖人名单[#d] <> #no_name THEN

            #c := #c + 1;

        END_IF;

    END_FOR;

    "人数" := #c;


    //统计奖品数量

    #e := 0;

    FOR #d := 0 TO 99 DO

        IF "奖品名单".中奖人名单[#d] <> #no_name THEN

            #e := #e + 1;

        END_IF;

    END_FOR;

    "奖品数" := #e;


    //如果奖品数量低于人数,则报警

    IF "奖品数" < "人数" THEN

        "HMI".奖品少报警 := 1;

    ELSE

        "HMI".奖品少报警 := 0;

    END_IF;


    IF #奖品数 > 99 THEN    //奖品数不能大于99人

        #奖品数 := 0;

        #中奖名 := 103;   //103表示数量超上限

        

    END_IF;


    #R_TRIG_Instance_2(CLK:=#RESET OR "FirstScan" , //数列复位

                       Q=>#R_TRIG_Instance_2.Q);

    IF #R_TRIG_Instance_2.Q THEN                    

        FOR #j := 0 TO 109 DO

            #站队[#j] := #j + 1;

        END_FOR;

        #n := 20;

        #中奖名 := 102;       //102代码表示请抽奖

        #抽奖次数 := 0;

        "抽奖_JP" := 0;

    END_IF;



    FOR #i := 0 TO 99 DO                     //序列重新排队

        IF #站队[#i] > #站队[#i + 1] THEN

            #战队temp := #站队[#i];

            #站队[#i] := #站队[#i + 1];

            #站队[#i + 1] := #战队temp;

        END_IF;

    END_FOR;



    #R_TRIG_Instance(CLK:=#抽奖,               //点击抽奖

                     Q=>#R_TRIG_Instance.Q);

    IF #R_TRIG_Instance.Q THEN

        #中奖名 := #站队[#n];

        #n_timp := #n;

    END_IF;


    #中奖人名 := "奖品名单".中奖人名单[#中奖名 - 1];


    #随机奖品 := #站队[#n];


    #R_TRIG_Instance_1(CLK := #确认,               //对抽奖结果确认

                       Q => #R_TRIG_Instance_1.Q);

    IF #R_TRIG_Instance_1.Q THEN

        #站队[#n_timp] := 100;

        #中奖名 := 102;           //等待抽奖

        #抽奖次数 := #抽奖次数 + 1;

    END_IF;


    #n := #n + 1;//随机数,因博图中无随机数,所以采取让n快速自增的方法(大约1s自增一千次)。

    IF #n >= #奖品数 - #抽奖次数 THEN

      #n := 0;

    END_IF;



    IF #抽奖次数 >= #奖品数 THEN     //抽奖次数大于人数时,提示抽奖结束

        #中奖名 := 101;            //101表示抽奖结束

    END_IF;


    //开机时初始化

    IF "FirstScan" THEN

        #抽奖次数 := 99;

        #中奖名 := 101;

        "确认_JP" := 1;

        "复位提示" := 1;

    END_IF;



    正在下载,请等待……
    下载附件需5积分!

    ?
    ?

    fighting2021

    • [管理员]
    • 精华:4帖
    • 求助:3帖
    • 帖子:896帖 | 6571回
    • 年度积分:1374
    • 历史总积分:16381
    • 注册:2022-09-25
    发表于:2022-09-25 09:10:38
    1楼

    感谢大神分享

    yecao

    • 精华:0帖
    • 求助:0帖
    • 帖子:5帖 | 246回
    • 年度积分:1203
    • 历史总积分:5077
    • 注册:2022-09-25
    发表于:2022-09-25 10:14:10
    2楼

    一直想用随机数写个简单的,谢谢了。

    芽菜@技术豆

    • 精华:0帖
    • 求助:9帖
    • 帖子:31帖 | 326回
    • 年度积分:0
    • 历史总积分:0
    • 注册:2022-09-25
    发表于:2022-09-25 10:59:29
    3楼

    太牛了大神!


    yecao

    • 精华:0帖
    • 求助:0帖
    • 帖子:5帖 | 246回
    • 年度积分:1203
    • 历史总积分:5077
    • 注册:2022-09-25
    发表于:2022-09-25 14:43:41
    4楼

    楼主,用户名和密码是什么?

    待我称王?封你为后i

    • 精华:0帖
    • 求助:0帖
    • 帖子:1帖 | 21回
    • 年度积分:3
    • 历史总积分:100
    • 注册:2022-09-25
    发表于:2022-09-25 19:43:53
    5楼

    谢谢楼主分享

    小古gg

    • 精华:1帖
    • 求助:0帖
    • 帖子:4帖 | 8回
    • 年度积分:816
    • 历史总积分:1257
    • 注册:2022-09-25
    发表于:2022-09-25 11:21:06
    6楼

    回复内容:

    对:yecao 一直想用随机数写个简单的,谢谢了。     内容的回复:

    plc做的都是伪随机

    小古gg

    • 精华:1帖
    • 求助:0帖
    • 帖子:4帖 | 8回
    • 年度积分:816
    • 历史总积分:1257
    • 注册:2022-09-25
    发表于:2022-09-25 11:23:16
    7楼

    回复内容:

    对:yecao 楼主,用户名和密码是什么?     内容的回复:

    账户密码都是engineer 可以修改成自己的,有疑问可以留言 看到了会及时回复的

    小草VIP

    • 精华:0帖
    • 求助:0帖
    • 帖子:0帖 | 2回
    • 年度积分:1
    • 历史总积分:2
    • 注册:2022-09-25
    发表于:2022-09-25 16:46:22
    8楼

    大神厉害啊

    小古gg

    • 精华:1帖
    • 求助:0帖
    • 帖子:4帖 | 8回
    • 年度积分:816
    • 历史总积分:1257
    • 注册:2022-09-25
    发表于:2022-09-25 15:06:55
    9楼

    有朋友反应 仿真运行时 点击记录抽奖结果或复位时报错,报警窗口指向了建文件的那行代码,原因可能是电脑安全设置的太高 电脑不让其他软件对c盘建立文件夹,处理方法是人为建立个文件夹,路径为C:\Storage Card SD\Logs

    • 精华:0帖
    • 求助:0帖
    • 帖子:3帖 | 81回
    • 年度积分:0
    • 历史总积分:61
    • 注册:2022-09-25
    发表于:2022-09-25 12:46:25
    10楼

    2022年钱包鼓鼓,国泰安康!

    =晴天=

    • 精华:0帖
    • 求助:0帖
    • 帖子:0帖 | 15回
    • 年度积分:8
    • 历史总积分:45
    • 注册:2022-09-25
    发表于:2022-09-25 09:45:45
    11楼

    大神厉害啊

    laoge

    • 精华:0帖
    • 求助:0帖
    • 帖子:0帖 | 129回
    • 年度积分:139
    • 历史总积分:141
    • 注册:2022-09-25
    发表于:2022-09-25 20:38:01
    12楼

    学习了,感谢大神!

    就这样毁了

    • 精华:0帖
    • 求助:0帖
    • 帖子:1帖 | 22回
    • 年度积分:43
    • 历史总积分:213
    • 注册:2022-09-25
    发表于:2022-09-25 19:56:50
    13楼

    这个好,支持下!  新手必读葵花宝典,太强了

    silky_56

    • 精华:0帖
    • 求助:0帖
    • 帖子:2帖 | 1568回
    • 年度积分:0
    • 历史总积分:53
    • 注册:2022-09-25
    发表于:2022-09-25 18:37:48
    14楼

    感谢楼主分享!

    laoge

    • 精华:0帖
    • 求助:0帖
    • 帖子:0帖 | 129回
    • 年度积分:139
    • 历史总积分:141
    • 注册:2022-09-25
    发表于:2022-09-25 08:57:57
    15楼

    谢谢分享,下载学习一下。

    Lonely_99

    • 精华:0帖
    • 求助:0帖
    • 帖子:0帖 | 2446回
    • 年度积分:0
    • 历史总积分:134
    • 注册:2022-09-25
    发表于:2022-09-25 10:29:18
    16楼

    感谢大神分享

    何涛

    • 精华:0帖
    • 求助:0帖
    • 帖子:1帖 | 265回
    • 年度积分:117
    • 历史总积分:117
    • 注册:2022-09-25
    发表于:2022-09-25 13:11:23
    17楼

    大神厉害呀,谢谢分享

    小古gg

    • 精华:1帖
    • 求助:0帖
    • 帖子:4帖 | 8回
    • 年度积分:816
    • 历史总积分:1257
    • 注册:2022-09-25
    发表于:2022-09-25 15:54:25
    18楼

    有朋友下载后编译出错,原因可能是博图版本低导致,hmi用到了vb,博图高级版及以上才支持vb

    lizhendongg

    • 精华:0帖
    • 求助:1帖
    • 帖子:12帖 | 461回
    • 年度积分:31
    • 历史总积分:765
    • 注册:2022-09-25
    发表于:2022-09-25 16:51:01
    19楼

    太好了,谢谢了

    wqwww520

    • 精华:0帖
    • 求助:0帖
    • 帖子:16帖 | 386回
    • 年度积分:34
    • 历史总积分:1716
    • 注册:2022-09-25
    发表于:2022-09-25 08:52:14
    20楼

    感谢大神分享

    ?
    相关主题

    官方公众号

    智造工程师
      首页 上一页 1 2 下一页 尾页
      ? ?
      湖北体育彩票 彩球-足彩彩票预测 世界杯预测大师 世界杯世博 篮球彩票助手
      体彩彩猫彩票 新浪彩票HD 全名世界杯 桥牌世界杯 赛事竞猜-足球
      足彩y 9188体彩 鑫鼎娱乐 摩纳哥娱乐城 疯狂彩虹球
      竞彩足球比分平台 全名足彩 红彩 彩客优彩彩票 球大师-足篮球预测比分专业竞猜赛事平台