Code Monkey home page Code Monkey logo

iioter / iotgateway Goto Github PK

View Code? Open in Web Editor NEW
739.0 21.0 221.0 58 MB

A cross-platform IoT gateway based on .net6. Through visual configuration, you can easily connect to any of your devices and systems (such as PLC, barcode scanner, CNC, database, serial device, host computer, OPC Server, OPC UA Server, Mqtt Server, etc.), so as to interact with Thingsboard, IoTSharp or Your own IoT platform for two-way data communication. Provide a simple driver development interface; of course, edge computing can also be performed.

Home Page: http://iotgateway.net/docs/enterprise/intro/

License: MIT License

C# 67.36% HTML 3.17% Dockerfile 0.03% JavaScript 28.87% CSS 0.57%
iot iiot scada modbus gateway iotsharp thingsboard thingsboard-gateway s7 snap7

iotgateway's Introduction


🙋 Hello

✍️  大家好,我是Sam!

🚀 Actions

iotgateway's People

Contributors

280780363 avatar abdalamask avatar alinayaa avatar benjaminchengh avatar cancelpj avatar ccliushou avatar dapeng17951 avatar iioter avatar jimojiangdahu avatar maikebing avatar zhanghuang515 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

iotgateway's Issues

can't be built after recent update

The error:

Plugins\Drivers\DriverFanuc\Fanuc.cs(12,26,12,33): error CS0535: 'Fanuc' does not implement interface member 'IDriver.connect()'

启动时报错

目前 我启动项目的时候 发现有个driver加载不了

info: Plugin.DriverService[0]
LoadDriverFiles Start
info: Plugin.DriverService[0]
LoadDriverFiles End,Count28
info: Plugin.DriverService[0]
LoadAllDrivers Start
fail: Plugin.DriverService[0]
LoadAllDrivers Error E:\CShapeProject\iotgateway\IoTGateway\bin\Debug\net6.0\drivers/net6.0\CNC.Fanuc.dll
System.IO.FileLoadException: Could not load file or assembly 'CNC.Fanuc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'.
at System.Runtime.Loader.AssemblyLoadContext.LoadFromPath(IntPtr ptrNativeAssemblyLoadContext, String ilPath, String niPath, ObjectHandleOnStack retAssembly)
at System.Runtime.Loader.AssemblyLoadContext.LoadFromAssemblyPath(String assemblyPath)
at System.Reflection.Assembly.LoadFrom(String assemblyFile)
at Plugin.DriverService.LoadAllDrivers() in E:\CShapeProject\iotgateway\Plugins\Plugin\DrvierService.cs:line 129
info: Plugin.DriverService[0]
LoadAllDrivers CNC.Fanuc.H.dll OK
info: Plugin.DriverService[0]
LoadAllDrivers CNC.MTConnect.dll OK
info: Plugin.DriverService[0]
LoadAllDrivers Mock.TcpClient.dll OK
info: Plugin.DriverService[0]
LoadAllDrivers OPC.DaClient.dll OK
info: Plugin.DriverService[0]
LoadAllDrivers OPC.UaClient.dll OK
info: Plugin.DriverService[0]
LoadAllDrivers Other.Toledo.dll OK
info: Plugin.DriverService[0]
LoadAllDrivers PLC.AllenBradley.dll OK
info: Plugin.DriverService[0]
LoadAllDrivers PLC.MelsecMc.dll OK
info: Plugin.DriverService[0]
LoadAllDrivers PLC.ModBusMaster.dll OK
info: Plugin.DriverService[0]
LoadAllDrivers PLC.OmronFins.dll OK
info: Plugin.DriverService[0]
LoadAllDrivers PLC.SiemensS7.dll OK
info: Plugin.DriverService[0]
LoadAllDrivers End,Count11

这里我是重新生成了解决方案,之后在vs2022的环境下运行,但是不明白为什么 在加载 \IoTGateway\bin\Debug\net6.0\drivers\net6.0\CNC.Fanuc.dll 的时候会出问题。

这个加载的失败会导致在调用西门子plc的时候 产生错误,没有办法获取 方法
我们后面的时候
期待得到您的回复

0.8.0版本镜像启容器报错

:{"Message":"Application startup exception","{OriginalFormat}":"Application startup exception"}}
iotgateway | Unhandled exception. System.Exception: Could not resolve a service of type 'Plugin.DeviceService' for the parameter 'deviceService' of method 'Configure' on type 'IoTGateway.Startup'.

从属设备如何通过iotgateway获取数据???

大佬,我想使用iotgateway推送数据到thingsboard,那在iotgateway中只能使用mqtt-client,但和iotgateway在一起的设备也想获取设备相关的参数值,使用[http://iotgateway.net/docs/iotgateway/mqtt 的主题没有获得消息,或者我的配置不对(文档写的不太明白),希望指点,求教了,各位大佬。

编译报错

为 #line 指令指定的行号缺少或无效 WalkingTec.Mvvm.Mvc D:\iotgateway-master\WalkingTec.Mvvm\WalkingTec.Mvvm.Mvc\obj\Debug\net5.0\Razor\Views_CodeGen\Gen.cshtml.g.cs 114 活动
win10 64,.netcore 5.0 vs2019

西门子S7驱动使用ReadMultipleVars代替Read方法

目前逻辑是按照DeviceVariables循环串行读取,在个数多的情况下,性能会明显变慢
可以使用ReadMultipleVars方法批量读取数据加快响应,提高吞吐量

                var pageSize = plcPageSize;
                var pages = (ioarg.Count / pageSize) + 1;
                for (int pageIndex = 0; pageIndex < pages; pageIndex++)
                {
                    var source = ioarg.Skip(pageIndex * pageSize).Take(pageSize).ToList();
                    var items = source.Select(x =>
                    {
                        var dataItem = S7.Net.Types.DataItem.FromAddress(x.arg.Address);
                        return dataItem;
                    }).ToList();
                    plc.ReadMultipleVars(items);
                    for (int i = 0; i < source.Count; i++)
                    {
                        source[i].Value = items[i].Value;
                    }
                }

变化上传改进

你好!我们是一家开源erp软件实施商,项目上有IIoT的需求,很高兴有你开源这么一款非常出色的IIot工业物联网网关,我在测试变化上传时遇到了一个问题,就是value不变化时,不上传,这是对的,但是它构成的多级json报文是上传的,这个也应该不上传,对吧?
以下为我的测试数据:
b'{"Modbus-Copy1":[{"ts":1655170338376,"devicestatus":0,"values":{"outQty":500}}]}'
b'{"Modbus-Copy1":[{"ts":1655170343380,"devicestatus":0,"values":{"outQty":500}}]}'
b'{"device":"Modbus-Copy1","id":"44743e54-9f2c-4134-aad0-c790040296c2","data":{"success":true,"description":null}}'
b'{"Value":400,"CookedValue":400,"Message":null,"StatusType":"Good","VarId":"f3a0a5fa-e9f7-4c33-b209-4b136241c907"}'
b'400'
b'{"Modbus-Copy1":[{"ts":1655170348381,"devicestatus":0,"values":{"outQty":400}}]}'
b'{"Modbus-Copy1":[{"ts":1655170353384,"devicestatus":0,"values":{"outQty":400}}]}'
b'{"Modbus-Copy1":[{"ts":1655170358385,"devicestatus":0,"values":{"outQty":400}}]}'
b'{"Modbus-Copy1":[{"ts":1655170363388,"devicestatus":0,"values":{"outQty":400}}]}'
b'{"Modbus-Copy1":[{"ts":1655170368390,"devicestatus":0,"values":{"outQty":400}}]}'
b'{"device":"Modbus-Copy1","id":"420f6a1f-a7e2-4dc3-840b-97fc12c3cb3c","data":{"success":true,"description":null}}'
b'{"Value":600,"CookedValue":600,"Message":null,"StatusType":"Good","VarId":"f3a0a5fa-e9f7-4c33-b209-4b136241c907"}'
b'600

bug:默认登录密码无法登录

复现步骤:构建master分支,生成解决方案后运行,输入用户名 admin 密码 00000 提示“无法登录”
image
image
LoginVM.cs 调试发现密码MD5和代码中 Utils.GetMd5String 的返回值不同
image
image

实际测试没有OPC-UA

软件版本:0.9.4
测试步骤:编译运行
发现问题:通讯配置-->配置组--->create--->设备 , 在这个里面找不到 OPC UA, 但是在网页里面就可以找到
image

image

Nlog.Targets.Mqtt

开发Nlog Mqtt扩展,前端通过WebSocket Mqtt订阅系统日志进行调试

项目文档

大佬,你的项目文档域名没有备案

源代码启动的时候报错

源代码下载后启动调试出错,DeviceService.cs这个文件,第90行ConstructorInfo constructor = driver.Type.GetConstructor(types); 提示错误信息为:System.NullReferenceException:“Object reference not set to an instance of an object.”
另外,我想问一下这个项目是否可以建一个技术交流群,我本身也是在做智慧工厂这一块的,我也做了有几年了

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.