如何监控您的坎贝尔蜂窝调制解调器数据使用:第一部分

通过拿但业莱特|更新日期:01/16/2019 |评论:2

搜索博客


订阅博客

设置你的首选项,当有新的博客文章发布时,你会收到与你的兴趣领域相匹配的电子邮件通知。


区域/应用程序

产品类别

活动

企业/新闻

请输入您的电子邮件地址:



显示一篇文章

你有想了解更多的话题吗?让我们知道。请尽量说得具体些。

让这个字段为空

CR310-CELL210数据记录器与CRBasic代码

您是否知道,您可以在我们的新数据记录器上使用CRBasic程序代码,使用集成的蜂窝调制解调器和我们的外部Campbell Scientific品牌的蜂窝模块来监视您的数据使用情况?在这个由两部分组成的系列文章中,我将首先向您展示如何在CR310-CELL210的CRBasic代码中实现这一点。此代码适用于任何型号的带有集成蜂窝调制解调器的cr300系列数据记录器。当您将它们与CR300、CR310、CR6或CR1000X数据记录器一起使用时,它也将用于我们的外部细胞CELL2XX模块。注意数据记录器操作系统兼容性要求如下:

展望未来:在本系列的第二篇文章中,我将向您展示如何使用外部CELL2XX系列蜂窝模块(使用CR800、CR850、CR1000或CR3000数据记录器)使用串行命令监视数据使用情况。

背景

CR300、CR310、CR1000X和CR6数据记录器记录蜂窝数据使用情况,可以在数据记录器程序中使用这些数据记录器关闭接口并执行各种功能。这些值已经存储在隐藏的设置表以下一些字段名称:

设置。CellUsageToday设置。CellUsageYesterday设置。CellUsageMonth设置。CellUsageLastMonth

记录这些数据很简单,只要把这些值添加到CRBasic数据表中就可以了,如下所示:

DataTable(CELL_DIAGNOSTICS, True, -1)示例(1,设置。示例(1,设置。CellUsageYesterday, FP2)示例(1,设置。cellusagmonth, FP2)样本(1,设置。CellUsageLastMonth FP2) EndTable

控制和显示变量的步骤

要了解控制变量及其显示方式的更多选项,请遵循下面列出的四步流程。

#1 -声明变量和设置单元

要开始用CRBasic代码监视数据使用情况,首先要声明变量并为变量分配单元。在下面的示例中,我使用了“cell_todays_usage”、“cell_yesterdays_usage”、“cell_this_months_usage”和“cell_last_months_usage”。

Public cell_todays_usage Public cell_yesterdays_usage Public cell_this_months_usage Public cell_last_months_usage Units cell_todays_usage = KB Units cell_yesterdays_usage = KB Units cell_this_months_usage = KB Units cell_last_months_usage = KB

#2 -创建一个数据表

如果您希望将使用信息存储在一个数据表中,请创建一个新的数据表或将值添加到现有的数据表中。下面的例子包含了昨天的用法,本月的用法和上个月的用法的额外选项:

DataTable(CELL_DIAGNOSTICS, True, -1)样本(1,cell_todays_usage, FP2)样本(1,cell_yesterdays_usage, FP2)样本(1,cell_this_months_usage, FP2)样本(1,cell_last_months_usage, FP2)样本(1,cell_last_months_usage, FP2

#3 -设置你声明的变量

在你的扫描()序列设置您声明为等于的变量设置。CellUsageToday或者下面显示的其他数据使用值。使用你的变量,你可以对条件语句运行它来编程记录器的行为。

cell_todays_usage =设置。CellUsageTodaycell_yesterdays_usage = Settings.CellUsageYesterday cell_this_months_usage = Settings.CellUsageMonth cell_last_months_usage = Settings.CellUsageLastMonth

#4 -写你的值到一个表

如果将数据记录到表中,请确保使用CallTable ()指令。为了避免在程序正常运行时中断其他传感器的读数,我把我的CallTable ()慢序列指令。(如果您使用的命令比我们在本例中使用的更多,这一点更相关,并且对于您的情况可能不是必需的。)一定要使用CallTable ()指令,如果您正在记录值。

SlowSequence Scan (10, Min, 0,0) cell_todays_usage =设置。CellUsageToday cell_yesterdays_usage =设置。cell_this_months_usage =设置。cell_last_months_usage =设置。CellUsageLastMonthCallTable CELL_DIAGNOSTICS NextScan

最后的项目例子

当你完成这些步骤后,你的程序应该看起来像这样:

“声明公共变量公共battery_voltage公共panel_temperature_c”细胞现代公共cell_todays_usage诊断信息:单位cell_todays_usage = KB公共cell_yesterdays_usage:单位cell_yesterdays_usage = KB公共cell_this_months_usage:单位cell_this_months_usage = KB公共cell_last_months_usage:单位cell_last_months_usage = KB DataTable(CELL_DIAGNOSTICS, True, -1)样本(1,设置。示例(1,设置。CellUsageYesterday, FP2)示例(1,设置。cellusagmonth, FP2)样本(1,设置。CellUsageLastMonth FP2) EndTableDataTable(TEST_DATA, True, -1) DataInterval(0, 5, Min, 10) Minimum(1, battery_voltage, FP2, True, False) Sample(1, panel_temperature_c, FP2) EndTable 'Main Program BeginProg Scan (1,Sec,0,0) PanelTemp (panel_temperature_c,60) Battery (battery_voltage) CallTable TEST_DATA NextScan SlowSequence Scan (10, Min, 0, 0) cell_todays_usage = Settings.CellUsageToday 'reported in KB cell_yesterdays_usage = Settings.CellUsageYesterday 'reported in KB cell_this_months_usage = Settings.CellUsageMonth 'reported in KB cell_last_months_usage = Settings.CellUsageLastMonth 'reported in KB CallTable CELL_DIAGNOSTICS NextScan EndSequence EndProg

更多你可以使用的价值

您还可以使用其他集成蜂窝调制解调器值。以下是一个简短的列表:

设置。CellRSSI '从发射塔设置中读取RSSI(信号强度)。在KB设置中报告的CellUsageToday的使用率。cellusage昨天在KB设置中报告的使用率。KB设置中报告的cellusagmonth使用情况。CellUsageLastMonth'usage reported in KB Settings.CellInfo 'Cell Info. The information that shows in DevConfig's Cellular Network Status field. Settings.CellStatus 'Status of the cellular modem. Settings.CellRSRP 'Reference signal received power for LTE in dbm. Settings.CellECIO 'Reference signal received quality for 3G. Settings.CellRSRQ 'Reference signal received quality for 4G. Settings.CellState 'State that the modem is in. "Network ready." Lets me know my modem is good to go. CellState can be the following (but not limited to): '"Power off.", '"Powering up.", '"Powered up.", '"SIM authorized.", '"Setting baud rate.", '"Waiting for baud rate.", '"Baud rate set.", '"Baud rate failure.", '"Power off. Waiting for retry.", '"Powered up. SIM auth failure.", '"Querying modem.", '"Waiting for network registration.", '"Configuring modem.", '"Dialing.", '"Dialing (retry).", '"Dialed.", '"PPP negotiation.", '"Network ready.", '"PPP closing.", '"PPP paused.", '"PPP dropped.", '"Terminal AT command mode.", '"Firmware update mode.", '"Shutting down."

你可下载CR3XX设置示例程序使用这些值。

结论

您可以根据数据使用情况和与Campbell Scientific的内部和外部细胞调制解调器相关的其他值对数据记录器进行监视和编程控制功能。选项包括:设置。CellUsageToday,设置。CellUsageYesterday,设置。CellUsageMonth,Settings.CellUsageLastMonth。

我所有的代码示例都来自于Gary Roberts创建的代码,他是坎贝尔科学公司负责通信和软件产品的产品经理。万博matex网页登录

我希望这个程序示例对您有帮助。尝试使用代码来监视您的数据使用情况在下面评论你的经历。还有,把你可能有的问题贴出来。

记住:在下一篇文章中,我们将探讨如何将串行命令与使用CR800、CR850、CR1000和CR3000数据记录器的外部cell2xx系列模块结合使用。


分享这篇文章



关于作者

拿但业莱特Nathanael Wright是Campbell Scientific, Inc.的支持和实施工程师。万博matex网页登录他为数据记录器、仪器和通信设备提供技术支持。Nathanael拥有计算机信息科学和工商管理学士学位,以及工商管理硕士学位。此外,Nathanael拥有超过10年的IP通信工作经验。工作之余,他喜欢跳霹雳舞、徒步旅行、出版书籍和摆弄电脑设备。

查看作者的所有文章。


评论

PILO|01/04/2021下午03:25

嗨,我们想知道每个设备/传感器存储了多少数据??以便得到一个合适的数据计划。我们将使用带有CR1000X的蜂窝调制解调器CELL215。谢谢

拿但业|2021年1月5日下午04:48

为了做出正确的猜测,我们需要知道更多的信息。你们有什么传感器?你多久从每个传感器读取一次读数?你多久下载一次文件?如果您认为25MB计划可能适合您,我的建议是使用250MB计划,因为成本差异非常小,而且可用的数据量是10倍。通过我们的支持热线联系我们,我们可能会更快地给你答复。435.227.9100

登录或注册置评。

我们在社交媒体上很活跃!
通过在这些平台上关注我们,了解我们的最新消息:

Baidu