自动化设备上位机设计 三

news2024/9/22 6:42:43

目录

一 设计原型

二 后台源码


一 设计原型

二 后台源码

using SqlSugar;

namespace 自动化上位机设计
{
    public partial class Form1 : Form
    {


        SqlHelper sqlHelper = new SqlHelper();
        SqlSugarClient dbContent = null;
        bool IsRun = false;
        int Count = 0;

        public Form1()
        {
            InitializeComponent();

            dbContent = sqlHelper.db;

            timer1.Enabled = true;
            timer1.Tick += Timer1_Tick;
        }

        private void Timer1_Tick(object? sender, EventArgs e)
        {
            this.Invoke(() =>
            {
                uiLedDisplay1.Text = DateTime.Now.ToString("HH:mm:ss");
            });
        }

        private void Form1_Load(object sender, EventArgs e)
        {

            sqlHelper.CreateTable<EntryClass>();

            //开始批量插入数据
            Task.Run(() => { AddData(); });
        }

        private void AddData()
        {

            while (true)
            {
                if (!IsRun) continue;

                EntryClass ec = new EntryClass();
                ec.Len = new Random().Next(200, 300).ToString();
                ec.Width = new Random().Next(40, 300).ToString();
                ec.Hight = new Random().Next(150, 250).ToString();
                ec.R = new Random().Next(10, 360).ToString();
                ec.Weit = new Random().Next(20, 30).ToString();
                ec.ZY = new Random().Next(50, 90).ToString();
                ec.DC = new Random().Next(40, 300).ToString();
                ec.DR = new Random().Next(400, 600).ToString();
                ec.YL = new Random().Next(28, 88).ToString();
                ec.WD = new Random().Next(89, 900).ToString();
                ec.SD = new Random().Next(234, 454).ToString();
                ec.LJ = new Random().Next(67, 89).ToString();

                //数据放入数据库中
                dbContent.Insertable(ec).ExecuteCommand();

                this.Invoke(() =>
                {
                    //同步展示参数
                    CD.Text = ec.Len;
                    KD.Text = ec.Width;
                    GD.Text = ec.Hight;
                    JD.Text = ec.R;
                    ZL.Text = ec.Weit;
                    ZY.Text = ec.ZY;
                    DY.Text = ec.DC;
                    NZ.Text = ec.DR;
                    PRESS.Text = ec.YL;
                    CC.Text = ec.WD;
                    SD.Text = ec.SD;
                    LJJ.Text = ec.LJ;

                    //参数展示到集合中
                    Data.Rows.Add(ec.Len, ec.Width, ec.Hight, ec.R, ec.Weit, ec.ZY, ec.DC, ec.DR, ec.YL, ec.WD, ec.SD, ec.LJ, DateTime.Now.ToShortTimeString(), "OK", "测试数据");

                    //计数
                    Count++;
                    uiLedDisplay2.Text = Count.ToString();

                    //打印日志
                    RunLog.AppendText("设备运行中,数据已加入到数据库\r\n");
                    ErorrLog.AppendText("设备运行中,数据已加入到数据库\r\n");
                    Log.AppendText("设备运行中,数据已加入到数据库\r\n");

                });

                Thread.Sleep(2000);
            }
        }

        private void uiSwitch1_ValueChanged(object sender, bool value)
        {
            if (uiSwitch1.Active)
            {
                uiLight1.OnColor = Color.Green;
                IsRun = true;
                RunLog.AppendText("设备启动。。。\r\n");
                ErorrLog.AppendText("设备启动。。。\r\n");
                Log.AppendText("设备启动。。。\r\n");
            }
            else
            {
                uiLight1.OnColor = Color.Red;
                IsRun = false;
                RunLog.AppendText("设备停止。。。\r\n");
                ErorrLog.AppendText("设备停止。。。\r\n");
                Log.AppendText("设备停止。。。\r\n");
            }
        }
    }
}

数据库实体类:

using SqlSugar;

namespace 自动化上位机设计
{

    //实体与数据库结构一样
    //数据是自增需要加上IsIdentity
    //数据库是主键需要加上IsPrimaryKey
    //注意:要完全和数据库一致2个属性
    [SugarTable("EntryClass")]
    public class EntryClass
    {
        public string Len { get; set; }
        public string Width { get; set; }
        public string Hight { get; set; }
        public string R { get; set; }

        public string Weit { get; set; }
        public string ZY { get; set; }
        public string DC { get; set; }
        public string DR { get; set; }

        public string YL { get; set; }
        public string WD { get; set; }
        public string SD { get; set; }
        public string LJ { get; set; }
    }
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1901755.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++初学者指南-4.诊断---基础:警告和测试

C初学者指南-4.诊断—基础知识&#xff1a;警告和测试 文章目录 C初学者指南-4.诊断---基础知识&#xff1a;警告和测试1. 术语和技术记住&#xff1a;使用专用类型&#xff01; 2.编译器警告Gcc/CLang 编译器选项MS Visual Studio 编译器选项 3.断言运行时断言静态断言&#x…

Spring容器Bean之XML配置方式

一、首先看applicationContext.xml里的配置项bean 我们采用xml配置文件的方式对bean进行声明和管理&#xff0c;每一个bean标签都代表着需要被创建的对象并通过property标签可以为该类注入其他依赖对象&#xff0c;通过这种方式Spring容器就可以成功知道我们需要创建那些bean实…

Docker-基础

一&#xff0c;Docker简介&#xff0c;功能特性与应用场景 1.1 Docker简介 Docker是一个开源的应用容器引擎&#xff0c;让开发者可以打包他们的应用以及依赖包到一个可移植的容器中&#xff0c;然后发布到任何流行的Linux机器上&#xff0c;也可以实现虚拟化&#xff0c;容器…

2024年AI技术深入研究

2024年AI技术持续快速发展,应用领域广泛,产业发展迅速,市场趋势积极,学术研究深入。 AI技术进展大模型发展 2024年,智谱AI正在研发对标OpenAI Sora的高质量文生视频模型,预计最快年内发布。智谱AI的进展显示了国内AI大模型领域的快速发展,以及与国际领先技术的竞争态势…

PageCache页缓存

一.PageCache基本结构 1.PageCache任务 PageCache负责使用系统调用向系统申请页的内存,给CentralCache分配大块儿的内存,以及合并前后页空闲的内存,整体也是一个单例,需要加锁. PageCache桶的下标按照页号进行映射,每个桶里span的页数即为下标大小. 2.基本结构 当每个线程的…

【话题】AI是在帮助开发者还是取代他们

大家好&#xff0c;我是全栈小5&#xff0c;欢迎阅读小5的系列文章&#xff0c;这是《话题》系列文章 目录 引言AI在代码生成中的应用AI在错误检测和自动化测试中的作用对开发者职业前景的影响技能需求的变化与适应策略结论文章推荐 引言 随着人工智能&#xff08;AI&#xff…

Python 获取tiktok视频评论回复数据 api接口

TIKTOK api接口 用于爬取tiktok视频评论回复数据 详细采集页面如图 https://www.tiktok.com/dailymail/video/7329872821990182190?qneural%20link&t1706783508149 请求API http://api.xxxx.com/tt/video/info/comment/reply?video_id7288909913185701125&comment_…

YOLOv8改进 | 注意力机制 | 结合静态和动态上下文信息的注意力机制

秋招面试专栏推荐 &#xff1a;深度学习算法工程师面试问题总结【百面算法工程师】——点击即可跳转 &#x1f4a1;&#x1f4a1;&#x1f4a1;本专栏所有程序均经过测试&#xff0c;可成功执行&#x1f4a1;&#x1f4a1;&#x1f4a1; 专栏目录 &#xff1a;《YOLOv8改进有效…

【Springer出版 | EI稳定检索】第五届物联网、人工智能与机械自动化国际学术会议 (IoTAIMA 2024,7月19-21)

由浙江工业大学主办&#xff0c;第五届物联网、人工智能与机械自动化国际学术会议 (IoTAIMA 2024) 将于2024年7月19-21日在浙江杭州召开。 会议旨在为从事物联网、人工智能与机械自动化的专家学者、工程技术人员、技术研发人员提供一个共享科研成果和前沿技术&#xff0c;了解学…

ubuntu22 sshd设置

专栏总目录 一、安装sshd服务 sudo apt updatesudo apt install -y openssh-server 二、配置sshd 使用文本编辑器打开/etc/ssh/sshd_config sudo vi /etc/ssh/sshd_config &#xff08;一&#xff09;配置sshd服务的侦听端口 建议将ssh的侦听端口改为7000以上的端口&#…

大数的排列组合公式C代码

我们知道&#xff0c;计算排列A(n,m)和组合C(n,m)可以用先求阶乘的方式实现&#xff0c;但是当数很大时求阶乘很容易溢出&#xff0c;所以这里给出非阶乘的方式求排列组合 求排列 分母和分子可以抵消&#xff0c;最后代码如下 unsigned long long A(int n, int m) {unsigned…

Buuctf之SimpleRev做法

首先&#xff0c;查个壳&#xff0c;64bit&#xff0c;那就丢进ida64中进行反编译进来之后&#xff0c;我们进入main函数&#xff0c;发现里面没什么东西&#xff0c;那就shiftf12搜索字符串&#xff0c;找到关键字符串&#xff0c;双击进入然后再选中该字符串&#xff0c;ctrl…

Android仿天眼查人物关系图

效果图预览 绘制思路 这里使用了中学解析几何知识 XPoint OPointX OPointXcosθ&#xff1b; YPoint OPointY OPointYsinθ&#xff1b; canvas.drawText(lists.get(i).getName(), XPoint (float) Math.cos(pere * i 5) * radius[i % radius.length] - 30, YPoint (fl…

TaskDisplayArea、ActivityStack、Task以及ActivityRecord之间的关系

目录 一、TaskDisplayArea、ActivityStack、TaskRecord以及ActivityRecord关系图 二、TaskDisplayArea、ActivityStack、Task以及ActivityRecord相关代码 1、ActivityRecord 2、Task 3、ActivityStack 4、TaskDisplayArea 前言&#xff1a;对TaskDisplayArea、ActivitySt…

【图解大数据技术】Flume、Kafka、Sqoop

【图解大数据技术】Flume、Kafka、Sqoop FlumeFlume简介Flume的应用场景 KafkaKafka简介Kafka架构Flume与Kafka集成 SqoopSqoop简介Sqoop原理sqoop搭配任务调度器实现定时数据同步 Flume Flume简介 Flume是一个数据采集工具&#xff0c;多用于大数据技术架构下的日志采集。 …

论文略读:Learning and Forgetting Unsafe Examples in Large Language Models

随着发布给公众的大语言模型&#xff08;LLMs&#xff09;数量的增加&#xff0c;迫切需要了解这些模型从第三方定制的微调数据中学习的安全性影响。论文研究了在包含不安全内容的噪声定制数据上微调的LLMs的行为&#xff0c;这些数据集包含偏见、毒性和有害性 发现虽然对齐的L…

尚庭公寓——数据库设计

1. 数据的关系 一对一&#xff0c;一对多&#xff08;多对一&#xff09;&#xff0c;多对多 2. 实体关系模型 实体关系模型常用ER图&#xff08;enity relationship graph&#xff09;表示&#xff1b; 矩形表示实体&#xff08;类似Java中的对象&#xff0c;如学生就是一…

Micron近期发布了32Gb DDR5 DRAM

Micron Technology近期发布了一项内存技术的重大突破——一款32Gb DDR5 DRAM芯片&#xff0c;这项创新不仅将存储容量翻倍&#xff0c;还显著提升了针对人工智能&#xff08;AI&#xff09;、机器学习&#xff08;ML&#xff09;、高性能计算&#xff08;HPC&#xff09;以及数…

进程的控制-孤儿进程和僵尸进程

孤儿进程 &#xff1a; 一个父进程退出&#xff0c;而它的一个或多个子进程还在运行&#xff0c;那么那些子进程将成为孤儿进程。孤儿进程将被 init 进程( 进程号为 1) 所收养&#xff0c;并由 init 进程对它们完成状态收集工作 为了释放子进程的占用的系统资源&#xff1a; …

每日一题~ (判断是否是合法的出栈序列)

大概的题意&#xff1a; 将 1-n 按照顺序进栈&#xff0c;问 输入的序列是否是合法的出栈序列。 遍历序列&#xff0c;如果当前这个值a小于 栈顶的值&#xff0c;说明它还未进栈&#xff08;因为我们是按照顺序进栈的&#xff09;&#xff0c;所以我们将 一些元素进栈&#xff…