小爱同学+8266的小爱语音台灯,基于Blinker库

“我们的动力源于对电子的热爱”

为大家详细介绍最近的语音台灯,不用了解各种通讯协议,直接调用函数,小白也会!

链接:https://pan.baidu.com/s/12m0TMhjH7SR9DHA_pTowBg?pwd=m4zf 
提取码:m4zf

目录

想法的产生

软件描写

使用Blinker.app 

 将设备接入米家

 Arduino IDE

环境搭建:

 EC11编码按键

WS2812

 工程代码

代码详解

硬件搭建 

灯板

台灯主板

亮度控制

电池充电芯片4056

灯板供电升压 芯片XL6007E1

ESP-12S

供电切换

 WS2812焊接

 外壳

 工程链接


想法的产生

刷B站时发现一位博主 用8266+blinker库制作了一个语音台灯,讲解的非常详细

原视频链接:

ESP8266联动小爱同学/点灯科技远程控灯,小白也能轻松搞定。_哔哩哔哩_bilibili

会用到的点灯科技公司网址:点灯科技-点灯物联网解决方案

有不懂的可以直接查看开发文档,遇到的问题都可以在论坛上查到

 我能不能做一个像米家台灯一样的物联网台灯呢,于是就有了这个项目

台灯要可以小爱同学语音控制,还可以在手机上查看台灯的状态信息,还有实体按键控制

8266-12s + EC11编码按钮 + WS2812

软件描写

使用Blinker.app 

需要到点灯科技官网下载

注册好后进入此界面(台灯是我已经注册好的) ,点击右上角+添加设备,点击独立设备

 

 我用的ESP8266,所以选择网络接入,接下来生成密钥(设备身份证)

 

 界面就会生成新的设备了, 可以点击编辑按钮添加组件,当组件触发后只需要在8266中的回调函数执行相应任务就行了           

 

 将设备接入米家

 需要8266烧入代码,点灯科技有示例代码,认真看就懂

#define BLINKER_WIFI
#define BLINKER_MIOT_LIGHT  //小爱同学light接口函数#include <Blinker.h>char auth[] = "********";              //换成APP获取到的密匙
char ssid[] = "********";              //WiFi账号
char pswd[] = "********";              //WIFI密码

Blinker库下载:https://github.com/blinker-iot/blinker-library/archive/master.zip

只能说人家介绍的非常详细:点灯科技-点灯物联网解决方案

看不明白的也可以跟着视频:ESP8266联动小爱同学/点灯科技远程控灯,小白也能轻松搞定。_哔哩哔哩_bilibili

进入米家APP>我的>其他平台设备>添加,找到电灯科技,返回时就会看到绑定的点灯科技了,点击同步设备就可以看到我们的台灯了

 

 Arduino IDE

环境搭建:

本次的台灯用到了两个库

#include <FastLED.h>  
//下载地址:https://github.com/blinker-iot/blinker-library/archive/master.zip#include <Blinker.h>
//可直接在IDE > 项目 > 加载库 > 添加库 里面找到

 EC11编码按键

我自己写的不太好用,这位老师讲的好,编码器代码源于:

【Arduino实验篇】第29课 旋转编码器实验_哔哩哔哩_bilibili

int getEncodeTurn(void)   //按键编码器
{static int oldA = HIGH;static int oldB = HIGH;static int swcount = 0;           //按键开关延时int result = 0;int newA = digitalRead(add);      //add.cut.sw是自己定义的引脚int newB = digitalRead(cut);if(newA != oldA || newB != oldB){if(oldA == HIGH && newA == oldA){result = (oldB * 2 - 1);}}oldA = newA;oldB = newB;if(!digitalRead(sw)){               //按压检测,开关台灯delay(30);if(!digitalRead(sw)){while(!digitalRead(sw)){;}     //松手检测,长按就会触发看门狗,重启,替代复位开关if(LED!=0){LED = 0;}else {LED = startled;}         //开启时等于初始亮度delay(100);}   }return result;
}

WS2812

我的指示灯灯珠的IN脚接的是GPIO16,好像用常见的库点不亮灯,找问题花了一点时间,发现FastLED.h可以驱动.我需要自己调颜色,用到了一下操作:

跟多使用方法可以看看:FastLED库 – 太极创客 (taichi-maker.com)

#include <FastLED.h>#define LED_PIN     16     //我的LED信号线IN接在16引脚
#define NUM_LEDS    1    //我的灯带一共级联了1颗LED
CRGB leds[NUM_LEDS];void setup() {FastLED.addLeds<WS2812, LED_PIN, GRB>(leds, NUM_LEDS);FastLED.setBrightness(100);  //可以设置全局亮度,调低亮度不刺眼
}void loop() {leds[0].r = 0;     leds[0].g = 100;   leds[0].b = 30;     FastLED.show();delay(1000);leds[0].r = 100;    leds[0].g = 20;    leds[0].b = 0;     FastLED.show();delay(1000);leds[0].r = 0;    leds[0].g = 80;    leds[0].b = 100;   FastLED.show();delay(1000);
}

 工程代码

直接粘,省的下载

#define BLINKER_WIFI
#define BLINKER_MIOT_LIGHT  //小爱同学light接口函数#include <FastLED.h>
#include <Blinker.h>char auth[] = "**********";               //换成APP获取到的密匙
char ssid[] = "**********";               //WiFi账号
char pswd[] = "**********";               //WIFI密码#define LED_PIN     16    //我的LED信号线IN接在16引脚
#define NUM_LEDS    1     //我的灯带一共级联了1颗LED
CRGB leds[NUM_LEDS];#define add    4    //+
#define sw     2    //sw
#define cut    5    //-
#define stdby  14   //充电停止
#define chrg   12   //充电检测
#define pwm    13   //pwm输出引脚#define BUTTON_1 "ButtonKey"
#define Slider_1 "SliderKey"
#define Slider_2 "SliderKey"BlinkerButton Button1("sw");     //按钮名称”sw“
BlinkerSlider Slider1("lightw"); //滑块名称”lightw“
BlinkerSlider Slider2("timing"); //滑块名称”timing“
BlinkerNumber NMU1("runtime");   //文本显示运行时间,"runtime"为文本框名称
BlinkerNumber NMU2("battery");   //文本显示电压,"battery"为文本框名称
BlinkerImage  Image1("charge");  //APP充电图标显示int LED = 0;               //LED亮度1-100
int startled = 20;         //台灯开启的初始亮度
int timeoff = 0;           //台灯关闭时间
int timestart;             //记录定时开始的时间
int chstate = 8;           //供电状态,控制指示灯颜色和app图片
float batteryv = 0;        //电池电压
bool oState = false;
bool blinkerrun = true;    //按键是否有触发判断
bool Mi_get = false;       //小爱同学是否触发//·································································//
void button1_callback(const String & state)    //APP按钮控制开关
{BLINKER_LOG("get button state: ", state);Blinker.vibrate();        //手机震动if (state=="on") {    if(LED == 0){                //灯已经打开就不操作LED = startled;            //开灯占空比设置为20}Button1.print("on");       // 反馈给APP按键开关状态   } else if(state=="off"){LED = 0;                   //占空比为0,实现关灯Button1.print("off");      // 反馈给APP按键开关状态  timeoff = 0;               //台灯关闭时间清零Slider2.print(0);          //调整定时滑块 }     Slider1.print(LED);         //调整亮度滑块 
}
void slider1_callback(int32_t value)           //滑块亮度控制
{    LED=value;   //接收亮度值if(LED == 0){Button1.print("off");      // 反馈给APP按键开关状态  timeoff = 0;               //台灯关闭时间清零Slider2.print(0);          //调整定时滑块 }else{Button1.print("on");       // 反馈给APP按键开关状态  }Slider1.print(LED);             //调整亮度滑块 }
void slider2_callback(int32_t value)           //APP滑块定时
{    BLINKER_LOG("get slider value: ", value);if(value!= 0){timeoff = value;                //接收台灯关闭时间timestart = Blinker.runTime();  //记录开始时间,单位sif(LED == 0){                   //如果灯还未开,启动定时器并开灯LED = startled;  Button1.print("on");          // 反馈给APP按键开关状态   Slider1.print(LED);           // 调整亮度滑块 }             }
}
void timing(void)                              //定时处理
{if(timeoff > 0){if(Blinker.runTime() - timestart == 60){  //一分钟进入一次timeoff--;Slider2.print(timeoff);           //调整滑块      if(timeoff == 0){LED = 0;                        //关闭灯Button1.print("off");           //反馈给APP按键开关状态Slider1.print(LED);             //调整亮度滑块               }}} 
}
void miotPowerState(const String & state)//小爱同学语音控制开关
{Mi_get = true;   //小爱同学触发标志if (state == BLINKER_CMD_OFF) {     LED = 0;          //占空比为0,实现关灯       BlinkerMIOT.powerState("off");BlinkerMIOT.print();}else if (state == BLINKER_CMD_ON) {if(LED == 0){LED = startled;          //如果灯是关闭的,开灯占空比设置为20     } BlinkerMIOT.powerState("on");    BlinkerMIOT.print();}
}
void miotBright(const String & bright)   //小爱同学亮度控制的回调函数
{Mi_get = true;   //小爱同学触发标志LED = bright.toInt();BlinkerMIOT.brightness(LED);BlinkerMIOT.print(); 
}
void miotQuery(int32_t queryCode)        // 查询设备状态回调函数
{Mi_get = true;   //小爱同学触发标志switch (queryCode){case BLINKER_CMD_QUERY_ALL_NUMBER :         // 查询所有设备BLINKER_LOG("MIOT Query All");BlinkerMIOT.powerState(oState ? "on" : "off");          BlinkerMIOT.brightness(LED);            //小爱同学查询亮度BlinkerMIOT.print();break;case BLINKER_CMD_QUERY_POWERSTATE_NUMBER :  // 查询电源类设备BLINKER_LOG("MIOT Query Power State");BlinkerMIOT.powerState(oState ? "on" : "off");BlinkerMIOT.print();break;default :                                   // 查询其他设备BlinkerMIOT.powerState(oState ? "on" : "off");BlinkerMIOT.print();break;}
}
void miotMode(uint8_t mode)              //小爱同学模式控制
{Mi_get = true;   //小爱同学触发标志if (mode == BLINKER_CMD_MIOT_NIGHT) {LED = 5;  // 夜光模式} else if (mode == BLINKER_CMD_MIOT_READING) {LED = 60;   // 阅读模式}else if (mode == BLINKER_CMD_MIOT_COMPUTER) {LED = 20;  // 电脑模式}BlinkerMIOT.mode(mode);BlinkerMIOT.print();
}
void Mi_ser()                            //小爱同学触发处理
{static int count = 0;if(Mi_get){count++;if(count >= 500){Mi_get = false;  //小爱同学触发标志count = 0; if(LED==0){Button1.print("off");      // 反馈给APP按键开关状态  timeoff = 0;               //台灯关闭时间清零Slider2.print(timeoff);    //调整定时滑块 }else{Button1.print("on");  Slider1.print(LED);         //调整亮度滑块 }}}
}
void heartbeat()          //心跳包数据同步,30-60s上传一次,包含运行时间数据
{ int runtime = 0;           //台灯运行时间runtime = Blinker.runTime();    //Blinker.runTime()单位为sNMU1.print(runtime / 60);       //上传台灯运行时间Slider1.print(LED);             //调整亮度滑块    Image1.print(chstate);          //供电状态  NMU2.print(batteryv);           //上传电池电压
}
void charge_ser()         //指示灯颜色,含有电池电压检测
{ static bool flag = true;batteryv = 6.0*analogRead(A0)/1024-0.18;if(!digitalRead(stdby)){           //充满电,低电平有效chstate = 2;     leds[0].r = 0;      //绿色leds[0].g = 50;  leds[0].b = 15;   FastLED.show();     }      else if(!digitalRead(chrg)){       //充电chstate = 3;    leds[0].r = 40;      //橙色leds[0].g = 10;  leds[0].b = 0;   FastLED.show();}   else if(batteryv < 3.4  && digitalRead(chrg)){chstate = 1;leds[0].r = 40;      //红色leds[0].g = 0;  leds[0].b = 0;   FastLED.show();}else if(digitalRead(stdby) && digitalRead(chrg) //电池供电&& batteryv >= 3.4){chstate = 0;if(LED == 0){leds[0].r = 0;     leds[0].g = 0;  leds[0].b = 0;   FastLED.show();}else{leds[0].r = 0;      //蓝色leds[0].g = 40;  leds[0].b = 50;   FastLED.show();}}                                      
}    
void bright_led()         //输出PWM波
{static int  showled;static int  first;static int  lon;static bool flag = false;if(first != LED){    //检测变化first = LED;flag = true;}if(showled > LED*9){if(flag){lon = (showled - LED*9)/15;  //将一次变化分为20次执行flag = false;}showled -=lon; if(showled < LED*9){showled = LED*9;}   //防止偏差过大}else if(showled < LED*9){if(flag){lon = (LED*9 - showled)/15;flag = false;}showled += lon; if(showled > LED*9){showled = LED*9;} }Serial.println(showled);analogWrite(pwm,showled);  //输出PWM波
}    
int getEncodeTurn(void)   //按键编码器
{static int oldA = HIGH;static int oldB = HIGH;static int swcount = 0;           //按键开关延时int result = 0;int newA = digitalRead(add);int newB = digitalRead(cut);swcount++;if(swcount > 3000){   //延时swcount=0;           blinkerrun = true;        //按键编码器发后,blinker禁用一段时间  Slider1.print(LED);         //调整亮度滑块if(LED==0){Button1.print("off");}     // 反馈给APP按键开关状态  else{Button1.print("on");}  }if(newA != oldA || newB != oldB){swcount=0;           blinkerrun = false;if(oldA == HIGH && newA == oldA){result = (oldB * 2 - 1);Serial.println(result);  }}oldA = newA;oldB = newB;if(!digitalRead(sw)){       //按压检测,开关台灯blinkerrun = false;          //按键操作时,禁用blinker操作swcount=0;   delay(30);if(!digitalRead(sw)){while(!digitalRead(sw)){;}     //松手检测,长按就会触发看门狗,重启if(LED!=0){LED = 0;}else {LED = startled;}       //开启时等于初始亮度delay(100);}   }return result;
}
void setup()
{  Serial.begin(115200);FastLED.addLeds<WS2812, LED_PIN, GRB>(leds, NUM_LEDS);FastLED.setBrightness(50);  //可以设置全局亮度,调低亮度不刺眼pinMode(add,INPUT);  //+pinMode(sw,INPUT); //swpinMode(cut,INPUT);  //- pinMode(stdby,INPUT); //充电停止pinMode(chrg,INPUT); //充电检测  pinMode(pwm, OUTPUT);  //亮度analogWriteFreq(25000);   //输出pwm频率为25kHz Blinker.begin(auth, ssid, pswd);Button1.attach(button1_callback);             // 按键回调Slider1.attach(slider1_callback);             // 滑块回调Slider2.attach(slider2_callback);             // 滑块回调BlinkerMIOT.attachBrightness(miotBright);     // 灯光亮度控制回调BlinkerMIOT.attachMode(miotMode);             // 模式控制回调BlinkerMIOT.attachPowerState(miotPowerState); // 电源控制回调BlinkerMIOT.attachQuery(miotQuery);           // 查询设备状态回调Blinker.attachHeartbeat(heartbeat);           // 心跳包回调}
void loop()
{if(blinkerrun){  //blinkerrun来源于getEncodeTurn(); 按键编码器触发标志Blinker.run(); timing();           //定时处理   charge_ser();       //指示灯Mi_ser();           //小爱同学触发处理Serial.println("run!");  } int change = getEncodeTurn();  //获得编码器信息LED = LED + change;if(LED<0){LED = 0;}if(LED>100){LED = 100;}bright_led();     //PWM输出 Serial.print("LED:"); Serial.println(LED); }

代码详解

举一个按钮的例子:

按钮名称要和点灯APP上的名称一致,例如我将按钮组件命为“SW”,

BlinkerButton Button1("sw");     //按钮名称”sw“

 然后在setup里面注册一下按钮的回调函数

Button1.attach(button1_callback);             // 按键回调

 当APP组件触发后就会执行回调函数里面的内容,我创建的是一个开关按钮,所以它会返回state状态值"on"或"off"

void button1_callback(const String & state)    //APP按钮控制开关
{  if (state=="on") {    } else if(state=="off"){}     
}

我们也可以从设备端将状态传给APP上的按钮,按钮就会呈现"on"或"off"状态

Button1.print("on");
Button1.print("off");

 实验代码:

#define BLINKER_WIFI
#define BLINKER_MIOT_LIGHT  //小爱同学light接口函数#include <Blinker.h>char auth[] = "**********";               //换成APP获取到的密匙
char ssid[] = "**********";               //WiFi账号
char pswd[] = "**********";               //WIFI密码#define BUTTON_1 "ButtonKey"BlinkerButton Button1("sw");     //按钮名称”sw“void button1_callback(const String & state)    //APP按钮控制开关
{  if (state=="on") {    } else if(state=="off"){}     
}void setup() {Serial.begin(115200);Blinker.begin(auth, ssid, pswd);Button1.attach(button1_callback);             // 按键回调
}void loop() {Blinker.run();}

话不多说,其他函数点灯科技里介绍很详细:点灯科技-点灯物联网解决方案

硬件搭建 

灯板

我采用了3串4并的模式,用的5050灯珠,在嘉立创开的铝基板(白色阻焊不能白嫖,用丝印代替) ,供电电压达到9v就很亮了

台灯主板

焊接好的实物

亮度控制

采用8266直接控制MOS管,这个不太严谨,但能用

也就是台灯是PWM控制亮度的,开关频率达到了30kHz,一点也不晃眼

 

电池充电芯片4056

最大充电电流可达1A,可以通过调节,就是图中的R1,我选取1.2K,充电电流实测可达0.9A

 

 并且4056有两个引脚输出充电状态,可以用8266检测,并将信息有一个2812指示灯显示

灯板供电升压 芯片XL6007E1

灯板供电实际8.5V左右,升压可以通过图中 R25 R24比值决定,但要注意此芯片最多输出2A电流

 Vout=\frac{R24+R25}{R25}*1.25v

ESP-12S

第一版用的三色RGB灯,需要三个io口,就导致GPIO0 GPIO15也使用上了,出现了一些问题。后面用到2812就解决问题了。IO口注意事项如下:

 用了8266的ADC检测电池电压,8266有10位ADC,输入最高1V。用了10k,2k电阻分压。

供电切换

简易的供电切换电路,有外部供电时就用外部供电并为电池充电。

开关用的是,需要将一个引脚剪掉,节省空间,放下电池(家里有条件的可以加两节18650)

 WS2812焊接

需要将灯直立起来,且只需要焊接 三个引脚

 外壳

为了打印出外壳,终于去学了下Solid Works,比原来的建模软件好用多了!

支撑的杆用的是PVC管子:粗杆用的外经10mm,壁厚1mm,细杆用的外经8mm,壁厚1mm

 为大家整理好了:

 工程链接

链接:https://pan.baidu.com/s/12m0TMhjH7SR9DHA_pTowBg?pwd=m4zf 
提取码:m4zf

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AI音箱的原理,小爱同学、天猫精灵、siri。

AI音箱的原理 简单的说&#xff0c;音箱工作的时&#xff0c;麦列始终处于拾音状态&#xff08;对声音进行采样&#xff0c;量化&#xff09;。进过基本的信号处理&#xff08;静音检测、降噪等&#xff09;&#xff0c;唤醒模块会判断是否出现唤醒词&#xff0c;是的话就进行…

3736. 数学题(math)

题目大意 给定两个向量&#xff0c;求 ∣ x a ⃗ y b ⃗ ∣ |x\vec ay\vec b| ∣xa yb ∣ 最小&#xff0c; x , y x,y x,y 不同时为0。 思路 约定&#xff1a; ∣ a ⃗ ∣ < ∣ b ⃗ ∣ |\vec a| < |\vec b| ∣a ∣<∣b ∣ &#xff0c;且两个向量夹角小于 π …

Cambridge IGCSE Mathematics数学真题讲解2

考试局&#xff1a;Cambridge Assessment International Education (CAIE) 考试类别&#xff1a;Cambridge International General Certificate of Secondary Education (IGCSE) 考试科目&#xff1a;Mathematics 考试单元&#xff1a;Paper 4 (Extended) 试卷代码&#xff1a;…

计算机类大学生竞赛经验分享

如果你是作为一个科班出生的学习编程方向的一名在校大学生&#xff0c;那么如果对竞赛感兴趣&#xff0c;可以看看这篇文章 本人作为一名前端开发方向的学生&#xff0c;将自己这几年的参赛经验和比赛相关类型介绍分享给大家 首先我们要知道&#xff0c;竞赛分为三种大概的方向…

上海AI Lab | 最新端到端自动驾驶综述,来龙去脉详尽梳理

点击下方卡片&#xff0c;关注“自动驾驶之心”公众号 ADAS巨卷干货&#xff0c;即可获取 今天自动驾驶之心很荣幸邀请到Li Chen来分享端到端自动驾驶的最新综述&#xff0c;如果您有相关工作需要分享&#xff0c;请在文末联系我们&#xff01; >>点击进入→自动驾驶之心…

华裔科学家Ashe教授对涉嫌造假的Nature论文的正面回应

Jeremy Olson 是普利策奖得主。他日前对明尼苏达大学研究阿尔茨海默病的著名华裔教授Karen Ashe博士进行了采访。Karen Ashe是2006年涉嫌造假的Nature论文的通讯作者&#xff0c;也是正在被调查质疑的Sylvain Lesn博士的前导师。 Karen Ashe 博士拒绝对Sylvain Lesn进行评论。S…

又一个免费GPT-4工具 Cursor,程序员写代码将被颠覆

每天都被openai震撼到&#xff0c; 他们家被广为人知的产品是chatgpt&#xff0c;就是那个聊天工具。现在已经开始有越来越多的产品集成openai&#xff0c;比如微软的office&#xff0c;bing。 现在又一个工具出现&#xff0c;一个叫Cursor的编辑器已经集成了openai的GPT-4&…

工具 | Cursor:一个不只是写代码的工具

本文首发微信公众号&#xff1a;全副武装的大师兄&#xff08;一个分享前沿技术&#xff0c;生活感受的公众号&#xff0c;关注我&#xff0c;率先了解好玩的工具&#xff09; 最新版本v0.1.12已经需要收费&#xff0c;伙伴们可以选择不用升级&#xff0c;另外&#xff0c;大家…

MySQL安装过程

本文章主要参考 https://blog.csdn.net/weixin_43579015/article/details/117228159?ops_request_misc%257B%2522request%255Fid%2522%253A%2522167866887916800184177766%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id167866887916800184…

网络游戏红利未减,昆仑万维如何急于转型?

文 | 黄安 来源 | 螳螂财经&#xff08;ID:TanglangFin&#xff09; 4月29日&#xff0c;昆仑万维公布了2020年一季报&#xff0c;营收超10亿&#xff0c;同比增长17.28%&#xff0c;归属股东净利润5亿&#xff0c;同比增长33.95%。然而在取得丰收的同时&#xff0c;今年也是…

昆仑万维旗下StarMaker VR成功加入Oculus开发者计划 获Oculus资金支持

​近期&#xff0c;昆仑万维旗下StarMaker VR平台成功加入Oculus开发者扶持计划&#xff0c;获得Oculus开发者资质认证及资金支持&#xff0c;这标志着StarMaker VR平台获得了全球VR头显龙头Oculus的官方认可&#xff0c;后续StarMaker VR会覆盖更多VR主流平台。 StarMaker VR…

昆仑万维年营收48.5亿:净利降69% 并表Opera与StarX

雷递网 雷建平 4月28日报道 昆仑万维日前发布财报&#xff0c;财报显示&#xff0c;昆仑万维2021年营收为48.5亿元&#xff0c;较上年同期的46.3亿元增长4.75%。 昆仑万维2021年计入政府补贴金额达3244万元。 昆仑万维2021年净利为15.47亿元&#xff0c;较上年同期的50.4亿元下…

昆仑万维拟收购音频社交应用StarMaker,全球超5000万活跃用户,2020年营收6.2亿

中国互联网公司出海已有10余年历史&#xff0c;根据AppsFlyer《2020中国娱乐与社交全球化应用报告》&#xff0c;2019Q1-2020Q1中国社交类应用以60%的年增长率远超全球19%的平均增速。Sensor Tower显示&#xff0c;全球非游戏类APP畅销排名TOP10中&#xff0c;9款产品均属泛娱乐…

AI作画的业界天花板被我找到了,AIGC模型揭秘 | 昆仑万维

一、前景 1、AI和AIGC的关系 人工智能&#xff08;Artificial Intelligence&#xff09;&#xff0c;英文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。 AIGC是继 UGC、PGC 之后新型利用AI技术自动生成内容的生产…

昆仑万维

昆仑万维CEO周亚辉&#xff1a;说我们投资乱是因为看不懂 过去1年&#xff0c;昆仑万维在资本市场动作不断&#xff0c;不仅斥资9300万美元投资全球最大同性恋网站Grindr&#xff0c;最近还联手360一起斥资12亿美元收购海外浏览器厂商Opera。 作为A股资本运作最频繁公司之一&am…

AIGC数据库工具-阿里开源Chat2DB

前言 今天无意间发现了一个AIGC数据库工具&#xff0c;chat2DB&#xff0c;重点&#xff01;&#xff01;&#xff01;阿里开源&#xff0c;其设计产品的思想给了我很多灵感&#xff0c;故记录一下&#xff0c;并分享给大家。 概述&#xff1a; Chat2DB 是一款有开源免费的多…

昆仑万维宣布即将推出「天工」大模型,4月17日启动邀请测试

4月10日&#xff0c;昆仑万维宣布&#xff0c;其和奇点智源合作自研、中国第一个真正实现智能涌现的国产大语言模型——「天工」3.5发布在即&#xff0c;并将于4月17日启动邀请测试。 此外&#xff0c;「天工」大模型已经非常接近OpenAI ChatGPT的智能水平。ChatGPT是基于GPT3…

昆仑万维“勇闯”百模大战:一个“无懈可击”的商业故事话本?

文丨智能相对论 作者丨沈浪 新能源火了做新能源&#xff0c;元宇宙火了做元宇宙。 如果一个热点领域没有昆仑万维的身影&#xff0c;那一定是这个领域还不够“热”&#xff0c;爆不了。 但凡是热到爆的领域&#xff0c;昆仑万维虽迟但到。 不过&#xff0c;这样说可能有些…

独立AIGC潮头 昆仑万维发布昆仑天工AIGC全系列算法与模型

近日&#xff0c;国内领先的互联网出海平台企业昆仑万维正式发布了自己的全系列AIGC算法与模型——昆仑天工。 不同于其它公司的单一路线&#xff0c;昆仑万维在进军AIGC之际&#xff0c;直接是覆盖四大细分领域&#xff1a;AI图像、AI音乐、AI文本和AI编程。「昆仑天工」旗下模…

接踵而至,昆仑万维天工大语言模型发布

目录 天工大语言模型对标GPT3.5对话能力多模态应用同行对比后言 天工大语言模型 国产ChatGPT再次迎来新成员&#xff0c;4月17日下午&#xff0c;昆仑万维正式发布千亿级大语言模型“天工”&#xff0c;同时宣布即日起启动邀请测试&#xff0c;并注册了chatgpt.cn作为域名。天…