العودة إلى الحلول

منصة الذكاء البرمجي

محرك المشاهد ومحولات البروتوكول وسلسلة أدوات هندسية لواجهة مخصصة.

ملاحظة: بيوربوينت سمارت هي شركة مصنعة لعتاد غرف الضيوف RCU واللوحات الذكية، وتركز على التوريد بالجملة و OEM/ODM. هذه الصفحة اختيارية كمرجع لتكامل البروتوكول والتطوير الثانوي للمتكاملين أو العملاء الذين يبنون برامجهم الخاصة — وليست منتجًا أساسيًا من بيوربوينت سمارت.

الأجهزة جاهزة — تكامل بروتوكول مفتوح

نقدم إنتاجًا مستقرًا لمضيفات RCU واللوحات والوحدات، مع مستندات بروتوكول Modbus / MQTT وأمثلة برمجية حتى يتمكن المتكاملون من تنفيذ منطق المشاهد على منصاتهم. تتولى بيوربوينت سمارت تعريف الأجهزة والتصنيع؛ بينما يبني شركاء التكامل أو أطراف ثالثة برامج التطبيقات و PMS والمنصات السحابية.

import org.eclipse.paho.client.mqttv3.*;
import org.eclipse.paho.client.mqttv3.persist.MemoryPersistence;

public class MqttClientDemo {
public static void main(String[] args) {
String broker = "tcp://127.0.0.1:1883";
String clientId = "JavaClient";
String pub_topic = "hotel/light/control";
String sub_topic = "hotel/light/status";
String content = "Smart lighting control";
int qos = 1;

try {
MemoryPersistence persistence = new MemoryPersistence();
MqttConnectOptions connOpts = new MqttConnectOptions();
MqttClient client = new MqttClient(broker, clientId, persistence);
client.connect(connOpts);
MqttMessage message = new MqttMessage(content.getBytes());
message.setQos(qos);
client.publish(pub_topic, message);
System.out.println("Message published");
client.subscribe(sub_topic, qos);
System.out.println("Subscribed to topic: " + sub_topic);
} catch (MqttException e) {
e.printStackTrace();
}
}
}
void publish(MQTTClient client, char *topic, char *payload) {
MQTTClient_message message = MQTTClient_message_initializer;
message.payload = payload;
message.payloadlen = strlen(payload);
message.qos = QOS;
message.retained = 0;
MQTTClient_deliveryToken token;
MQTTClient_publishMessage(client, topic, &message, &token);
MQTTClient_waitForCompletion(client, token, TIMEOUT);
printf('Send `%s` to topic `%s` ', payload, PUB_TOPIC);
}
def publish(client):
    msg_count = 0
    while not FLAG_EXIT:
        msg_dict = {
            'type': 'info'
        }
        msg = json.dumps(msg_dict)
        if not client.is_connected():
            logging.error('publish: MQTT client is not connected!')
            time.sleep(1)
            continue
        result = client.publish(PUB_TOPIC, msg)
        status = result[0]
        if status == 0:
            print(f'Send `{msg}` to topic `{PUB_TOPIC}`')
        else:
            print(f'Failed to send message to topic {PUB_TOPIC}')
        msg_count += 1
        time.sleep(1)
func publish(client mqtt.Client) {
qos := 0
msgCount := 0
for {
payload := `{'type':'info'}`
if token := client.Publish(pub_topic, byte(qos), false, payload); token.Wait() && token.Error() != nil {
fmt.Printf('publish failed, topic: %s, payload: %s', pub_topic, payload)
} else {
fmt.Printf('publish success, topic: %s, payload: %s', pub_topic, payload)
}
msgCount++
time.Sleep(time.Second * 1)
}
}
client.on('connect', () => {
console.log(`${protocol}: Connected`)
client.subscribe(sub_topic, { qos }, (error) => {
if (error) {
console.log('subscribe error:', error)
return
}
console.log(`${protocol}: Subscribe to topic '${sub_topic}'`)
client.publish(pub_topic, payload, { qos }, (error) => {
if (error) {
console.error(error)
}
})
})
})
static void Publish(MqttClient client, string topic)
{
int msg_count = 0;
while (true)
{
System.Threading.Thread.Sleep(1*1000);
string msg = '{'type':'info'}';
client.Publish(topic, System.Text.Encoding.UTF8.GetBytes(msg));
Console.WriteLine('Send `{0}` to topic `{1}`', msg, topic);
msg_count++;
}
}
$payload = array(
'type' => 'info'
);
$jsonp = json_encode($payload);
$mqtt->publish(
$jsonp,
0,
true
);
printf('msg send $jsonp to $pub_topic');
$mqtt->subscribe($sub_topic, function ($topic, $message) {
printf('Received message on topic [%s]: %s', $topic, $message);
}, 0);

مصممة لمطوري البرمجيات
مع أجهزة IoT ذكية قادرة

منذ 1996، توفر بيوربوينت سمارت مضيفات RCU ولوحات مفاتيح ذكية بزجاج لمسي ووحدات غرف الضيوف لمشاريع الفنادق والسكن والتجارة — مع وثائق بروتوكول Modbus / MQTT لفرق برمجيات المُكاملين.
وظائف أجهزة مفتوحة بالكامل
وظائف أجهزة مفتوحة بالكامل

تفتح بيوربوينت سمارت جميع إمكانات الأجهزة حتى يتمكن المطورون من بناء تطبيقات لمزيد من سيناريوهات IoT وإطلاق إمكانات أكبر.

بروتوكول موحد للأجهزة
بروتوكول موحد للأجهزة

عبر التصميمات القائمة على الشرائح، تحافظ بيوربوينت سمارت على بروتوكول اتصال موحد — جميعها تدعم MQTT و TCP.

متغيرات إقليمية عالمية
متغيرات إقليمية عالمية

يحصل كل جهاز على إصدارات خاصة بالمنطقة لتلبية المعايير والمتطلبات المحلية، مع أدوات وتجميع مخصص.

دعم OEM/ODM
دعم OEM/ODM

OEM متاح بدءًا من 1000 وحدة لكل دفعة وفق مواصفات العميل؛ تواصل مع بيوربوينت سمارت لمتطلبات ODM.

اتصال WiFi أو 4G لخدمات الشبكة
عادةً ما يصل نطاق أجهزة بيوربوينت سمارت عبر WiFi إلى 10–50 م؛ ويمكنها الاتصال بالخدمات المحلية أو السحابية للعميل. يدعم 4G شركات الاتصال الكبرى ويناسب المواقع المنتشرة أو التي يصعب تمديد الأسلاك فيها — للخدمات السحابية فقط.
اتصال WiFi
اتصال WiFi

مع الأجهزة الذكية عبر WiFi, يمكن نشر الخوادم على الشبكة المحلية أو السحابة. تستخدم الأجهزة أوضاع MQTT pub/sub أو TCP listen لتبادل البيانات — مناسب للنشر المركزي.

اتصال 4G متعدد الناقلين
اتصال 4G متعدد الناقلين

مع أجهزة 4G, يجب استضافة الخوادم على السحابة. تستخدم الأجهزة MQTT pub/sub أو TCP listen لتبادل البيانات — مناسب للنشر المنتشر.

MQTT أو TCP لاتصال أجهزة موثوق
شغّل وسيط MQTT خاصًا لمراسلة pub/sub بين الأجهزة للتحكم أو جمع البيانات. أو اربط الأجهزة بخادم TCP للاتصالات التقليدية — مثل Netty TCP Server أو ربط كمبيوتر مضيف. فيما يلي ثلاثة أنماط شبكة شائعة للمرجع.
اتصال خادم MQTT
اتصال خادم MQTT

اربط أجهزة بيوربوينت سمارت عبر MQTT القياسي — موثوق وفعال وآمن لبدء أعمال IoT.

اتصال خادم TCP
اتصال خادم TCP

خادم TCP مخصص مع بروتوكول TCP لتوسيع الشبكات الحالية إلى جانب الأجهزة الأخرى.

اتصال كمبيوتر مضيف
اتصال كمبيوتر مضيف

اضبط أجهزة بيوربوينت سمارت كمضيف TCP; استخدم أدوات SCADA لجمع البيانات والتحكم مباشرة.

وظائف أساسية مستقرة — ابنِ أعمالك بحرية
تغلف بيوربوينت سمارت أوامر الأجهزة المعقدة في رسائل JSON قياسية. بعد اتصال MQTT, يكفي pub/sub بسيط لجمع البيانات والتحكم. يمكن لمطوري الواجهة الأمامية والخلفية تولي الأجهزة بسرعة لبناء تطبيقات مخصصة.
التحكم في التشغيل/الإيقاف

التحكم في التشغيل/الإيقاف

نشر رسائل موضوع MQTT أو الإرسال عبر خادم TCP إلى العميل

إرسال JSON (تشغيل)
{
"type":"event",
"key":1
}
رد JSON
{
"type":"Socket-mini",
"key":1,
"wifiLock":0,
"keyLock":0,
"ip":"192.168.0.101"
}
استعلام الطاقة

استعلام الطاقة

استعلام الجهد والتيار والطاقة التراكمية في الوقت الفعلي لمراقبة الحمل

إرسال رسالة JSON
{
"type":"statistic"
}
رد JSON
{
"voltage": 226.024,
"current": 15.027,
"power": 2921.511,
"energy": 25.047
}
قفل إعداد WiFi

قفل إعداد WiFi

قفل إعداد WiFi للجهاز لمنع التكوين الخاطئ في الموقع

إرسال رسالة JSON
{
"type":"setting",
"wifiLock":1
}
رد JSON
{
"type":"Socket-mini",
"key":1,
"wifiLock":1,
"keyLock":0,
"ip":"192.168.0.101"
}
قفل مفاتيح الوظائف

قفل مفاتيح الوظائف

قفل مفاتيح وظائف الجهاز لمنع الضغط الطويل لإعادة ضبط المصنع في الموقع

إرسال رسالة JSON
{
"type":"setting",
"keyLock":1
}
رد JSON
{
"type":"Socket-mini",
"key":1,
"wifiLock":1,
"keyLock":1,
"ip":"192.168.0.101"
}
استعلام الحالة

استعلام الحالة

حالة الجهاز الحالية بما في ذلك عنوان MAC واسم WiFi والمزيد

إرسال رسالة JSON
{
"type":"info"
}
رد JSON
{
"mac":"Socket-mini",
"type":"Socket-mini",
"version":"2.0.0",
"key":1,
"wifiLock":1,
"keyLock":1,
"ip":"192.168.0.101",
"ssid":"open-wifi"
}
سير عمل التطوير الثانوي
01
اختر الأجهزة الذكية
اشترِ العتاد الذكي لسيناريو تطبيقك
02
الإعداد الأولي للجهاز
اضبط إعدادات الشبكة واتصال الخادم
03
التحكم وجمع البيانات
جرّب إرسال أوامر التحكم واستقبال تقارير الأجهزة
04
تكامل نظام الأعمال
أطلق نظام أعمالك وأكمل النشر الخاص
توفير سير العمل (مثال للمقبس الذكي)
الخطوة 1:

اربط الهاتف أو الكمبيوتر بنقطة اتصال الجهاز hc-xxxxxxxx, كلمة المرور: Aa123456.

الخطوة 1:
الخطوة 2:

بعد الاتصال، تُفتح صفحة الإعداد تلقائيًا (أو انتقل إلى 192.168.4.1).

الخطوة 2:
الخطوة 3:

اضغط إعداد WiFi, اختر الشبكة (حدّث لإعادة المسح)، أدخل كلمة المرور واحفظ.

الخطوة 3:
الخطوة 4:

بكلمة المرور الصحيحة، اضغط حفظ — يتحقق الإعداد من WiFi ويكمل الإعداد.

الخطوة 4:
خيارات وصول مرنة لكل مطور
سيناريوهات متعددة وتحكم مركب بحرية في عتاد بيوربوينت سمارت. نقل بيانات JSON, استجابة أقل من 50 مللي ثانية، ودعم تطوير متعدد اللغات.
خيارات وصول مرنة لكل مطور
عميل MQTT
MQTT pub/sub ثنائي الاتجاه بين الأجهزة والخادم لجمع البيانات والتحكم
عميل TCP
يبدأ الجهاز اتصال TCP بخادم TCP ويستمع لأوامر الخادم
خادم TCP
يشغّل الجهاز خادم TCP كمضيف؛ يتصل عملاء TCP للجمع والتحكم
عميل MQTT

هل تحتاج BOM عتاد أو أدلة أسلاك؟

تصفح كتالوج المنتجات والمستندات الهندسية؛ واجهة API للمطورين لتكامل النظام.