国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序

這篇具有很好參考價值的文章主要介紹了微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序

一、需求背景

在嘗試了這么多次的ChatGPT在純軟方向的應(yīng)用開發(fā)后,深感LLM(大語言模型)的能力之強(qiáng)大。俗話說得好:心有多大舞臺就有多大!基于AI大模型,可以嘗試的方面實在是數(shù)不勝數(shù)!輕輕松松就可以突破在移動互聯(lián)網(wǎng)時代APP/平臺所積累下的數(shù)據(jù)壁壘和優(yōu)勢!以及像一些高門檻且需要大量的人力和物力才能實現(xiàn)的功能,現(xiàn)在借助現(xiàn)成的AI大模型能力可以以更低的成本實現(xiàn)!

所以,這次我們來做點不一樣的!這一期來嘗試一下ChatGPT物聯(lián)網(wǎng)(IoT)結(jié)合的項目!

說到物聯(lián)網(wǎng)(IoT--【Internet of Thing】)大家可能會有許些的陌生,那么直白來說就是萬物互聯(lián)也就是近幾年很火的智能家居,在通信硬件的能力的支持下,按照統(tǒng)一的通信協(xié)議來共享并分析各個設(shè)備所采集數(shù)據(jù),從而實現(xiàn)系統(tǒng)更加貼近人的使用習(xí)慣!真正做到家具智能化!
微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序

那么問題來了,作為一個程序打工人天天接觸最多的電器無非就是筆記本和顯示器!

這兩樣作為職業(yè)生涯中的吃飯家伙!這不得好好地伺候一手,這完全可以借助ChatGPT的能力把他們進(jìn)行智能化改造!

那么從哪里入手呢?

  • 對于筆記本: 作為生產(chǎn)力的來源,其本身就是一個多方面的輸入輸出設(shè)備,說到底要讓其變得更加智能,我想應(yīng)該沒有比給他加一張4070顯卡或者加兩條64G內(nèi)存條來的更快、更直接、更有效果吧!【目前暫時沒有想到可以借助ChatGPT能力的方向,如果大家有好的主意,歡迎隨時扣我!】
  • 對于顯示器: 這是一個純粹的輸出設(shè)備,它無償接收來之外界的全部信號!只要能吃得下,照單全收!俗話說得好:成績越差潛力越大! 所以,我們這一期的主角誕生了,我們這一次就借助ChatGPT的能力硬將其從呆板的輸出源能力擴(kuò)充為智能小助手!

那么問題又來了!

作為一個死板的顯示器,只有一個顯示屏,幾個物理按鍵,沒有任何的智能化的組件,又要如何植入ChatGPT的能力呢?

那么這個時候我們需要借助一些外在的智能物理設(shè)備,來賦能顯示器實現(xiàn)智能化!所以很顯然,說到顯示器====我想第一時間想到的大概率是電腦臺燈!

需求也很明確:我們需要一臺帶有智能控制和通信于一體的護(hù)眼臺燈

于是乎,什么話都不用多說,打開淘寶走起。搜索"智能電腦臺燈"。相信群眾的眼睛是雪亮的,整一手“按銷量排序”。直接無腦相信銷量第一的智能王者!----明基智能屏幕掛燈(ScreenBar Halo)

那么問題又又又來了!

  • 這玩意真的有這么智能嘛?它真的經(jīng)接得住我們的ChatGPT的智能大改造嘛?
  • 你說這玩意這么好,這不就是個燈嘛?整個能亮的不就行?

- 首先智能不智能我們需要第一步先看硬件,要將其與ChatGPT打通,智能的無線通信調(diào)節(jié)功能必不可少!
從該臺燈的詳細(xì)介紹中,輕而易舉我們可以獲得答案:

功能特性
微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序 微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序

- 其次,第二個方面,我們選擇臺燈只是難道僅僅是因為其能發(fā)光發(fā)亮嘛?僅僅是為了滿足在黑夜中尋找到漆黑的左手???,醒醒把兄弟,都是為了護(hù)眼吧!所以都是為了對眼睛好,我們尋找到一臺護(hù)眼功能給力的利器,這難道不是成功的第一步?!
從兩款臺燈的功能對比中,輕而易舉我們可以獲得答案:

網(wǎng)紅爆款將就型 高科技智能型
微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序 微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序

為了實現(xiàn)智能家居小程序,以及消除大家的疑慮,我直接將兩個燈買回來進(jìn)行對比使用,以下是一些不同角度的對比例證,哪個適合我們的項目高下立見:

  • 首先先從宣傳照跟實際使用來感受一波區(qū)別對比:
宣傳效果圖 實際使用效果圖
微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序 微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序

對于傳統(tǒng)的臺燈來說,亮度稍微一調(diào)大,便直接在屏幕上留下了一道白斑! 燈光效果實在是一言難盡!
微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序

不僅如此,·后部亮燈模式又給燈具添加了幾分高級色彩!氛圍拉滿!·
微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序

說到重中之重,論燈具的智能性,`一個有無線長距離控制器,一個是有限束縛控制器!
智能性高下立見!

控制器對比 智能無線控制器使用展示
微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序 微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序

二、項目原理及架構(gòu)

2.1 實現(xiàn)原理

  • ChatGPT Prompt提示詞設(shè)置
你是一位智能家居助手,
現(xiàn)在開始你需要根據(jù)我的作息時間從健康護(hù)眼的角度觸發(fā)對我的臺燈參數(shù)進(jìn)行設(shè)置,
同時將燈的亮度和色溫推薦給我。
輸入示例:
{	
	起床:9:00,
	早晨閱讀:9:30--10:10,
	程序開發(fā):10:30--12:00,
	午休:12:00--14:00,
	 程序開發(fā):14:10--18:30,
	看電影休閑:19:00--21:00,
	晚間閱讀:22:00--23:00
}
指令輸出:
{
	護(hù)眼模式:9:30--10:10,
	均衡模式:10:30--12:00,
	氛圍模式:12:00--14:00,
	冷光模式:14:10--18:30,
	喜好模式:19:00--21:00,
	暖光模式:22:00--23:00
}

實際輸入:
{	
	起床:10:00,
	程序開發(fā):10:30--12:00,
	午休:12:00--14:00,
	 打游戲:14:10--18:30,
	看電影休閑:19:00--21:00,
	晚間游戲:22:00--23:00
}

指令輸出:

ChatGPT設(shè)置為智能家居小助手,并將構(gòu)建好的Prompt結(jié)合自身的作息規(guī)律然后輸入到ChatGPT中,從而得出ChatGPT小助手所推薦的臺燈護(hù)眼方案。

微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序


ChatGPT家居小助手護(hù)眼方案輸出:

根據(jù)您提供的作息時間,我會為您設(shè)置臺燈的參數(shù),以健康護(hù)眼為出發(fā)點。以下是對應(yīng)的臺燈模式設(shè)置和推薦的亮度和色溫:

護(hù)眼模式:10:30--12:00,這個時間段您在進(jìn)行程序開發(fā),護(hù)眼模式會提供柔和的光線,推薦亮度為50%、色溫為4000K。

均衡模式:12:00--14:00,這個時間段是您的午休時間,均衡模式會提供適中的光線,推薦亮度為60%、色溫為4500K。

氛圍模式:14:10--18:30,這個時間段您會打游戲,氛圍模式會提供舒適的光線,推薦亮度為70%、色溫為5000K。

冷光模式:19:00--21:00,這個時間段您會看電影休閑,冷光模式會提供明亮而清晰的光線,推薦亮度為80%、色溫為5500K。

喜好模式:22:00--23:00,這個時間段您會進(jìn)行晚間游戲,喜好模式可以根據(jù)您的個人喜好設(shè)置臺燈的參數(shù),您可以根據(jù)需要調(diào)整亮度和色溫。

暖光模式:根據(jù)您提供的作息時間,沒有明確的晚間閱讀時間段,所以我會將晚間閱讀時間段設(shè)置為暖光模式,時間為22:00--23:00,這樣可以給您提供柔和而溫暖的光線,推薦亮度為60%、色溫為3500K。

這些設(shè)置將根據(jù)您的作息時間自動調(diào)整臺燈的亮度和色溫,以最大程度地保護(hù)您的眼睛健康。請注意,以上是根據(jù)一般的護(hù)眼建議進(jìn)行的設(shè)置和推薦,您可以根據(jù)個人喜好和舒適度對亮度和色溫進(jìn)行微調(diào)。如有其他需求或疑問,請隨時告訴我。

2.2 技術(shù)架構(gòu)

微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序


2.3 技術(shù)棧

模塊 語言及框架 涉及的技術(shù)要點
小程序前端 基于VUE 2.0語法+Uni-app跨平臺開發(fā)框架 Http接口通信、Flex布局方式、uView樣式庫的使用、JSON數(shù)據(jù)解析、定時器的使用
小程序接口服務(wù)端 Python + Flask WEB框架 rest接口的開發(fā)、 ChatGPT API接口的數(shù)據(jù)對接 、 前后端websocket實時通信
影刀RPA手機(jī)自動化 Python + 安卓手機(jī)USB調(diào)試 安卓手機(jī)的USB調(diào)試功能的開啟與調(diào)試,APP元素的定位以及操作app元素的python腳本編寫

2.4 數(shù)據(jù)交互原理


三、項目功能的實現(xiàn)

3.1 ChatGPT API的接入

要接入ChatGPT API,需要按照以下步驟進(jìn)行操作:

  1. 注冊一個賬號并登錄到OpenAI的官網(wǎng):https://openai.com/
  2. 在Dashboard頁面上,創(chuàng)建一個API密鑰。在“API Keys”選項卡下,點擊“Generate New Key”按鈕。將生成的密鑰保存好,以備后續(xù)使用。
  3. 選擇所需的API服務(wù),例如“Completion” API,以使用OpenAI的文本生成功能。

微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序
使用Python調(diào)用ChatGPT API實現(xiàn)代碼如下:

  • 方法一:使用request
import requests
import json

# 構(gòu)建API請求
url = "https://api.openai.com/v1/engines/davinci-codex/completions"
headers = {"Content-Type": "application/json",
           "Authorization": "Bearer YOUR_API_KEY"}
data = {
    "prompt": "Hello, my name is",
    "max_tokens": 5
}

# 發(fā)送API請求
response = requests.post(url, headers=headers, data=json.dumps(data))

# 解析API響應(yīng)
response_data = json.loads(response.text)
generated_text = response_data["choices"][0]["text"]

print(generated_text)


  • 方式二:使用openAI庫
from flask import Flask, request
import openai

app = Flask(__name__)

openai.api_key = "YOUR_API_KEY_HERE"

@app.route("/")
def home():
    return "Hello, World!"

@app.route("/chat", methods=["POST"])
def chat():
    data = request.json
    response = openai.Completion.create(
        engine="davinci",
        prompt=data["message"],
        max_tokens=60
    )
    return response.choices[0].text

if __name__ == "__main__":
    app.run()


3.2 小程序端設(shè)計與實現(xiàn)

臺燈控制首頁 圓盤亮度調(diào)節(jié)
微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序 微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序

首頁控制元素詳細(xì)源碼如下:


<template>
	<view class="template-outset">


		<!-- 流星-->
		<view class="tn-satr">
			<view class="sky"></view>
			<view class="stars">
				<view class="falling-stars">
					<view class="star-fall"></view>
					<view class="star-fall"></view>
					<view class="star-fall"></view>
					<view class="star-fall"></view>
				</view>
				<view class="small-stars">
					<view class="star"></view>
					<view class="star"></view>
					<view class="star"></view>
					<view class="star"></view>
					<view class="star"></view>
					<view class="star"></view>
					<view class="star"></view>
					<view class="star"></view>
					<view class="star"></view>
					<view class="star"></view>
					<view class="star"></view>
					<view class="star"></view>
				</view>
				<view class="medium-stars">
					<view class="star"></view>
					<view class="star"></view>
					<view class="star"></view>
					<view class="star"></view>
					<view class="star"></view>
					<view class="star"></view>
					<view class="star"></view>
					<view class="star"></view>
					<view class="star"></view>
					<view class="star"></view>
					<view class="star"></view>
					<view class="star"></view>
				</view>
			</view>
		</view>


		<view class="tn-text-center tn-color-gray--disabled" style="padding: 5vh 0 0 0;    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 9999999;
    width: 56vh;
    height: 50vh;">
			<view class="tn-flex tn-flex-wrap">
				<view class="tn-flex-basic-md">
					<view class="tn-padding-lg tn-margin-xs tn-radius bg-flex-shadow tn-shadow-blur">
						<zai-lattice shadow progressColor='#fff93a' :progressPercent="Number(40)" title='亮度'
							:num='lightNum' unit='%' @click="fixFlag = 1" />
					</view>
				</view>
				<view class="tn-flex-basic-md">
					<view class="tn-padding-lg tn-margin-xs tn-radius bg-flex-shadow tn-shadow-blur">
						<zai-lattice shadow progressColor='#1af4ff' :progressPercent="Number(40)" title='色溫'
							:num='tempretureNum' unit='%' @click="fixFlag = 2" />
					</view>
				</view>
			</view>
			<light-condition @change="changeNumber" style="margin-bottom: 40px;"></light-condition>

			<view class='nav-list'>

				<block v-for="(content_item, content_index) in titles" :key="content_index">
					<navigator open-type="navigate" hover-class='none' :url="content_item.url"
						class="nav-list-item tn-shadow-blur tn-cool-bg-image tn-flex tn-flex-col-center tn-flex-row-between"
						:class="[
	          getRandomCoolBg(content_index)
	        ]">
						<view class="nav-link tn-flex-1">
							<view class='title'>{{ content_item.title }}</view>
						</view>
						<view class="icon">
							<view :class="['tn-icon-' + content_item.icon]"></view>
						</view>
					</navigator>
				</block>

			</view>

		</view>




		<view class="tnwave waveAnimation">
			<view class="waveWrapperInner bgTop">
				<view class="wave waveTop"
					style="background-image: url('https://tnuiimage.tnkjapp.com/wave/wave-2.png')"></view>
			</view>
			<view class="waveWrapperInner bgMiddle">
				<view class="wave waveMiddle"
					style="background-image: url('https://tnuiimage.tnkjapp.com/wave/wave-2.png')"></view>
			</view>
			<view class="waveWrapperInner bgBottom">
				<view class="wave waveBottom"
					style="background-image: url('https://tnuiimage.tnkjapp.com/wave/wave-1.png')"></view>
			</view>
		</view>

		<!-- <nav-index-button style="position: fixed;z-index: 999999;" @click.native="navToUrl()"></nav-index-button> -->

	</view>
</template>

<script>
	import zaiLattice from "../../components/zai-lattice";
	import lightCondition from "@/components/comid-Ucharts/bar.vue"

	import template_page_mixin from './template_page_mixin.js'
	import NavIndexButton from './nav-index-button.vue'
	export default {
		name: 'TemplateWave',
		mixins: [template_page_mixin],
		components: {
			NavIndexButton,
			zaiLattice,
			lightCondition
		},
		data() {
			return {
				fixFlag: 1,
				lightNum: 0,
				tempretureNum: 0,
				titles: [{
						title: 'AI調(diào)節(jié)',
						icon: 'trophy-fill'
					},
					{
						title: '行為分析',
						icon: 'inventory-fill',
						url:"./report"
					}
				]
			}
		},
		methods: {
			getRandomCoolBg() {
				return this.$tn.color.getRandomCoolBgClass()
			},
			navToUrl() {
				console.log("===-----99")
			},
			changeNumber(e) {
				console.log('==c==', e)
				if (this.fixFlag === 1) {
					this.lightNum = e
				}
				if (this.fixFlag === 2) {
					this.tempretureNum = e
				}
			}
		}
	}
</script>

<style lang="scss" scoped>
	@import './custom_nav_bar.scss';
	@import '@/tuniao-ui/libs/css/main.scss';
	
	
	@keyframes suspension {
	  0%, 100% {
	    transform: translateY(0);
	  }
	  50% {
	    transform: translateY(-0.8rem);
	  }
	}

	/* 用戶信息 start */
	.user-info {
		&__container {
			position: absolute;
			top: 25vh;
			left: 50%;
			-webkit-transform: translate(-50%, -50%);
			transform: translate(-50%, -50%);
		}

		&__avatar {
			width: 200rpx;
			height: 200rpx;
			border: 8rpx solid rgba(255, 255, 255, 0.05);
			border-radius: 50%;
			overflow: hidden;
			box-shadow: 0rpx 0rpx 80rpx 0rpx rgba(0, 0, 0, 0.15);
		}

		&__nick-name {
			color: #FFFFFF;
			margin-top: 26rpx;
			font-size: 36rpx;
			font-weight: 600;
			text-align: center;
		}
	}

	/* 用戶信息 end */

	/* 流星*/
	.tn-satr {
		position: fixed;
		width: 100%;
		height: 600px;
		overflow: hidden;
		flex-shrink: 0;
		z-index: 998;
	}

	.stars {
		position: absolute;
		z-index: 1;
		width: 100%;
		height: 100px;
	}

	.star {
		border-radius: 50%;
		background: #ffffff;
		box-shadow: 0px 0px 6px 0px rgba(255, 255, 255, 0.8);
	}

	.small-stars .star {
		position: absolute;
		width: 3px;
		height: 3px;
	}

	.small-stars .star:nth-child(2n) {
		opacity: 0;
		-webkit-animation: star-blink 1.2s linear infinite alternate;
		animation: star-blink 1.2s linear infinite alternate;
	}

	.small-stars .star:nth-child(1) {
		left: 40px;
		bottom: 50px;
	}

	.small-stars .star:nth-child(2) {
		left: 200px;
		bottom: 40px;
	}

	.small-stars .star:nth-child(3) {
		left: 60px;
		bottom: 120px;
	}

	.small-stars .star:nth-child(4) {
		left: 140px;
		bottom: 250px;
	}

	.small-stars .star:nth-child(5) {
		left: 400px;
		bottom: 300px;
	}

	.small-stars .star:nth-child(6) {
		left: 170px;
		bottom: 80px;
	}

	.small-stars .star:nth-child(7) {
		left: 200px;
		bottom: 360px;
		-webkit-animation-delay: .2s;
		animation-delay: .2s;
	}

	.small-stars .star:nth-child(8) {
		left: 250px;
		bottom: 320px;
	}

	.small-stars .star:nth-child(9) {
		left: 300px;
		bottom: 340px;
	}

	.small-stars .star:nth-child(10) {
		left: 130px;
		bottom: 320px;
		-webkit-animation-delay: .5s;
		animation-delay: .5s;
	}

	.small-stars .star:nth-child(11) {
		left: 230px;
		bottom: 330px;
		-webkit-animation-delay: 7s;
		animation-delay: 7s;
	}

	.small-stars .star:nth-child(12) {
		left: 300px;
		bottom: 360px;
		-webkit-animation-delay: .3s;
		animation-delay: .3s;
	}

	@-webkit-keyframes star-blink {
		50% {
			width: 3px;
			height: 3px;
			opacity: 1;
		}
	}

	@keyframes star-blink {
		50% {
			width: 3px;
			height: 3px;
			opacity: 1;
		}
	}

	.medium-stars .star {
		position: absolute;
		width: 3px;
		height: 3px;
		opacity: 0;
		-webkit-animation: star-blink 1.2s ease-in infinite alternate;
		animation: star-blink 1.2s ease-in infinite alternate;
	}

	.medium-stars .star:nth-child(1) {
		left: 300px;
		bottom: 50px;
	}

	.medium-stars .star:nth-child(2) {
		left: 400px;
		bottom: 40px;
		-webkit-animation-delay: .4s;
		animation-delay: .4s;
	}

	.medium-stars .star:nth-child(3) {
		left: 330px;
		bottom: 300px;
		-webkit-animation-delay: .2s;
		animation-delay: .2s;
	}

	.medium-stars .star:nth-child(4) {
		left: 460px;
		bottom: 300px;
		-webkit-animation-delay: .9s;
		animation-delay: .9s;
	}

	.medium-stars .star:nth-child(5) {
		left: 300px;
		bottom: 150px;
		-webkit-animation-delay: 1.2s;
		animation-delay: 1.2s;
	}

	.medium-stars .star:nth-child(6) {
		left: 440px;
		bottom: 120px;
		-webkit-animation-delay: 1s;
		animation-delay: 1s;
	}

	.medium-stars .star:nth-child(7) {
		left: 200px;
		bottom: 140px;
		-webkit-animation-delay: .8s;
		animation-delay: .8s;
	}

	.medium-stars .star:nth-child(8) {
		left: 30px;
		bottom: 480px;
		-webkit-animation-delay: .3s;
		animation-delay: .3s;
	}

	.medium-stars .star:nth-child(9) {
		left: 460px;
		bottom: 400px;
		-webkit-animation-delay: 1.2s;
		animation-delay: 1.2s;
	}

	.medium-stars .star:nth-child(10) {
		left: 150px;
		bottom: 10px;
		-webkit-animation-delay: 1s;
		animation-delay: 1s;
	}

	.medium-stars .star:nth-child(11) {
		left: 420px;
		bottom: 450px;
		-webkit-animation-delay: 1.2s;
		animation-delay: 1.2s;
	}

	.medium-stars .star:nth-child(12) {
		left: 340px;
		bottom: 180px;
		-webkit-animation-delay: 1.1s;
		animation-delay: 1.1s;
	}

	@keyframes star-blink {
		50% {
			width: 4px;
			height: 4px;
			opacity: 1;
		}
	}

	.star-fall {
		position: relative;
		border-radius: 2px;
		width: 80px;
		height: 2px;
		overflow: hidden;
		-webkit-transform: rotate(-20deg);
		transform: rotate(-20deg);
	}

	.star-fall:after {
		content: "";
		position: absolute;
		width: 50px;
		height: 2px;
		background: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0)), to(rgba(255, 255, 255, 0.4)));
		background: linear-gradient(to left, rgba(0, 0, 0, 0) 0%, rgba(255, 255, 255, 0.4) 100%);
		left: 100%;
		-webkit-animation: star-fall 3.6s linear infinite;
		animation: star-fall 3.6s linear infinite;
	}

	.star-fall:nth-child(1) {
		left: 80px;
		bottom: -100px;
	}

	.star-fall:nth-child(1):after {
		-webkit-animation-delay: 2.4s;
		animation-delay: 2.4s;
	}

	.star-fall:nth-child(2) {
		left: 200px;
		bottom: -200px;
	}

	.star-fall:nth-child(2):after {
		-webkit-animation-delay: 2s;
		animation-delay: 2s;
	}

	.star-fall:nth-child(3) {
		left: 430px;
		bottom: -50px;
	}

	.star-fall:nth-child(3):after {
		-webkit-animation-delay: 3.6s;
		animation-delay: 3.6s;
	}

	.star-fall:nth-child(4) {
		left: 400px;
		bottom: 100px;
	}

	.star-fall:nth-child(4):after {
		-webkit-animation-delay: .2s;
		animation-delay: .2s;
	}

	@-webkit-keyframes star-fall {
		20% {
			left: -100%;
		}

		100% {
			left: -100%;
		}
	}

	@keyframes star-fall {
		20% {
			left: -100%;
		}

		100% {
			left: -100%;
		}
	}


	/* 波浪*/
	.template-outset {
		background-image: linear-gradient(to top, #4C3FAE 20%, #6E26BA 80%);
		width: 100vw;
		height: 100vh;
	}

	@keyframes move_wave {
		0% {
			transform: translateX(0) translateZ(0) scaleY(1)
		}

		50% {
			transform: translateX(-25%) translateZ(0) scaleY(1)
		}

		100% {
			transform: translateX(-50%) translateZ(0) scaleY(1)
		}
	}

	.tnwave {
		overflow: hidden;
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		top: 0;
		margin: auto;
	}

	.waveWrapperInner {
		position: absolute;
		width: 100%;
		overflow: hidden;
		height: 100%;
	}

	.wave {
		position: absolute;
		left: 0;
		width: 200%;
		height: 100%;
		background-repeat: repeat no-repeat;
		background-position: 0 bottom;
		transform-origin: center bottom;
	}

	.bgTop {
		opacity: 0.4;
	}

	.waveTop {
		background-size: 50% 45px;
	}

	.waveAnimation .waveTop {
		animation: move_wave 4s linear infinite;
	}

	.bgMiddle {
		opacity: 0.6;
	}

	.waveMiddle {
		background-size: 50% 40px;
	}

	.waveAnimation .waveMiddle {
		animation: move_wave 3.5s linear infinite;
	}

	.bgBottom {
		opacity: 0.95;
	}

	.waveBottom {
		background-size: 50% 35px;
	}

	.waveAnimation .waveBottom {
		animation: move_wave 2s linear infinite;
	}


	/* 組件導(dǎo)航列表 start*/
	.nav-list {
		display: flex;
		flex-wrap: wrap;
		padding: 0rpx 12rpx 0rpx;
		justify-content: space-between;
		  animation: suspension 3s ease-in-out infinite;
		

		/* 列表元素 start */
		.nav-list-item {
			padding: 30rpx 30rpx 20rpx 30rpx;
			border-radius: 12rpx;
			width: 45%;
			margin: 0 18rpx 40rpx;
			background-size: cover;
			background-position: 50%;
			position: relative;
			z-index: 99;

			/* 元素標(biāo)題 start */
			.nav-link {
				font-size: 32rpx;
				line-height: 1.2;
				text-transform: capitalize;
				padding: 0rpx 10rpx 0rpx 0;
				position: relative;

				.title {
					color: #FFFFFF;
					text-align: left;
				}
			}

			/* 元素標(biāo)題 end */

			/* 元素圖標(biāo) start */
			.icon {
				font-variant: small-caps;
				width: 70rpx;
				height: 70rpx;
				line-height: 70rpx;
				margin: 0;
				padding: 0;
				display: inline-flex;
				text-align: center;
				justify-content: center;
				vertical-align: middle;
				font-size: 45rpx;
				color: #FFFFFF;
				white-space: nowrap;
				opacity: 0.9;
				background-color: rgba(0, 0, 0, 0.05);
				background-size: cover;
				background-position: 50%;
				border-radius: 5000rpx;
			}

			/* 元素圖標(biāo) end */
		}

		/* 列表元素 end */
	}

	/* 組件導(dǎo)航列表 end*/
</style>

燈光屬性分析 燈光使用時長分析
微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序 微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序

3.3 影刀RPA操作手機(jī)遙控器實現(xiàn)燈具互聯(lián)

影刀RPA是一款基于Python自動化組件的桌面流程可視化操作平臺?;谒?,我們可以不用寫一行python代碼就可以實現(xiàn)像機(jī)器人一樣去自動執(zhí)行手機(jī)或者電腦的多種功能操作!
微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序

影刀RPA 官網(wǎng)下載地址


為了實現(xiàn)小程序與臺燈的數(shù)據(jù)交互,我們在不熟悉嵌入式編程的困境下,可以借助外在的物理條件實現(xiàn)物物信息交流,這里我們使用手機(jī)中的萬能遙控器對臺燈進(jìn)行發(fā)號施令! ,從而間接實現(xiàn)小程序與臺燈的信息交流!

微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序

  • 影刀RPA手機(jī)操作功能如下:

微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序

微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序

手機(jī)開啟自動化連接操作步驟:
微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序



四、推薦閱讀

??入門和進(jìn)階小程序開發(fā),不可錯誤的精彩內(nèi)容?? :文章來源地址http://www.zghlxwxcb.cn/news/detail-477472.html

  • 《小程序開發(fā)必備功能的吐血整理【個人中心界面樣式大全】》
  • 《微信小程序 | 借ChatGPT之手重構(gòu)社交聊天小程序》
  • 《微信小程序 | 人臉識別的最終解決方案》
  • 《微信小程序 |基于百度AI從零實現(xiàn)人臉識別小程序》
  • 《吐血整理的幾十款小程序登陸界面【附完整代碼】》

到了這里,關(guān)于微信小程序| 基于ChatGPT+明基屏幕掛燈實現(xiàn)超智能家居物聯(lián)網(wǎng)小程序的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 【微信小程序】屏幕適配

    【微信小程序】屏幕適配

    在網(wǎng)頁中一般是使用 rem 單位,它能夠根據(jù)html的字號大小自動改變尺寸,開發(fā)者可以動態(tài)的計算屏幕尺寸,然后根據(jù)屏幕大小的不同設(shè)置html的字號 小程序解決適配使用 rpx 單位,它能夠根據(jù)屏幕大小自動進(jìn)行轉(zhuǎn)換。 每一個機(jī)型的寬度和高度都不一樣,只需要寫rpx自動會折算

    2024年03月08日
    瀏覽(24)
  • ChatGPT-MP:基于ChatGPT實現(xiàn)的微信小程序,適配H5和WEB端,包含前后臺,支持打字效果輸出流式輸出,支持AI聊天次數(shù)限制,支持分享增加次數(shù)等功能

    ChatGPT-MP:基于ChatGPT實現(xiàn)的微信小程序,適配H5和WEB端,包含前后臺,支持打字效果輸出流式輸出,支持AI聊天次數(shù)限制,支持分享增加次數(shù)等功能

    包含前后臺,支持打字效果輸出流式輸出,支持AI聊天次數(shù)限制,支持分享增加次數(shù)等功能。 開源版禁止商用,僅供學(xué)習(xí)交流,禁止倒賣。 感謝Star! 技術(shù)棧:JDK8 + SpringBoot + Vue2 + Uniapp + Mysql Github地址:https://github.com/oldinaction/ChatGPT-MP Gitee地址(國內(nèi)訪問更快):https://gitee.com

    2024年02月09日
    瀏覽(23)
  • 【微信小程序】獲取/設(shè)置屏幕亮度

    微信小程序中經(jīng)常用到設(shè)置屏幕亮度,比如生成二維碼時候。 1.獲取屏幕亮度 wx.getScreenBrightness() 2.設(shè)置屏幕亮度:wx.setScreenBrightness() 參數(shù)值:value 0-1,越大越亮 設(shè)置前先獲取一下屏幕亮度存起來,設(shè)置好亮度等不需要這么亮或離開頁面的時候設(shè)置回去,這樣用戶體驗好一

    2024年02月16日
    瀏覽(21)
  • 微信小程序-屏幕高度分析詳解

    微信小程序-屏幕高度分析詳解

    點擊跳轉(zhuǎn) screenheight代表手機(jī)屏幕的高度(包括最上方狀態(tài)欄和webview渲染區(qū)域和tabbar與導(dǎo)航欄) windowHeight代表webview區(qū)域,不包含狀態(tài)欄和導(dǎo)航欄和tabbar, 如果設(shè)置了pages.json里navigationStyle的值custom,那么windowHeight代表webview加上狀態(tài)欄加上導(dǎo)航欄,不包括tabbar SelectorQuery.select (選擇節(jié)點

    2024年02月09日
    瀏覽(21)
  • 微信小程序| AIGC之動手實現(xiàn)ChatGPT法律顧問小程序

    微信小程序| AIGC之動手實現(xiàn)ChatGPT法律顧問小程序

    在資本退去后,現(xiàn)如今的互聯(lián)網(wǎng)行情很差勁,很多創(chuàng)新業(yè)務(wù)都不得不砍除。再加上國內(nèi)互聯(lián)網(wǎng)時代進(jìn)入到了一個 增量猶顯疲態(tài),增量殺紅了眼! 階段,各大互聯(lián)網(wǎng)公司均有一種斷臂求生的態(tài)勢!各位互聯(lián)網(wǎng)同行,大力發(fā)展第二職業(yè)已然變成了必要的生產(chǎn)力! 我們既要辯證的

    2024年02月07日
    瀏覽(17)
  • 微信小程序——調(diào)節(jié)手機(jī)屏幕亮度案例分享

    微信小程序——調(diào)節(jié)手機(jī)屏幕亮度案例分享

    ?作者簡介:2022年 博客新星 第八 。熱愛國學(xué)的Java后端開發(fā)者,修心和技術(shù)同步精進(jìn)。 ??個人主頁:Java Fans的博客 ??個人信條:不遷怒,不貳過。小知識,大智慧。 ??當(dāng)前專欄:前端案例分享專欄 ?特色專欄:國學(xué)周更-心性養(yǎng)成之路 ??本文內(nèi)容:微信小程序——調(diào)節(jié)

    2024年02月03日
    瀏覽(16)
  • uniapp微信小程序獲取屏幕寬高

    uniapp開發(fā)微信小程序的時候,有時候去調(diào)整樣式 你需要適配各種手機(jī)屏幕,使用,你的樣式寬高就不能使用rpx?? 有的朋友覺得可以使用vw? vh? %? ?是的,當(dāng)然可以 但是要讓你的元素,寬高,比如50%再去加上20rpx? 怎么做 所以這時候就要去獲取不同手機(jī)頁面屏幕的寬高 如何

    2023年04月09日
    瀏覽(25)
  • 微信小程序 獲取當(dāng)前屏幕的可見高寬度

    微信小程序 獲取當(dāng)前屏幕的可見高寬度

    很多時候我們做一下邏輯 需要用整個窗口的高度或?qū)挾葏⑴c計算 而且很多時候我們js中拿到的單位都是px像素點 沒辦法和rpx同流合污 官方提供了wx.getSystemInfoSync() 可以獲取到部分窗口信息 其中就包括了整個窗口的寬度和高度 wx.getSystemInfoSync().windowHeight 返回值為像素點 px 整個

    2024年01月16日
    瀏覽(15)
  • ChatGPT-MP:基于GPT實現(xiàn)的微信小程序,適配H5和WEB端,包含前后臺,支持打字效果輸出流式輸出,支持AI聊天次數(shù)限制,支持分享增加次數(shù)等功能

    ChatGPT-MP:基于GPT實現(xiàn)的微信小程序,適配H5和WEB端,包含前后臺,支持打字效果輸出流式輸出,支持AI聊天次數(shù)限制,支持分享增加次數(shù)等功能

    包含前后臺,支持打字效果輸出流式輸出,支持AI聊天次數(shù)限制,支持分享增加次數(shù)等功能。 開源版禁止商用,僅供學(xué)習(xí)交流,禁止倒賣。 感謝Star! 技術(shù)棧:JDK8 + SpringBoot + Vue2 + Uniapp + Mysql Github地址:https://github.com/oldinaction/ChatGPT-MP Gitee地址(國內(nèi)訪問更快):https://gitee.com

    2024年02月15日
    瀏覽(28)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包