当前位置:首页 > 物联网 > IoT设计分享
[导读]在本教程中,我们将在树莓派中安装Apache web服务器,以从可以通过互联网从任何地方访问的网页控制LED。这是一个具有最低功能的基本教程,可以进一步修改以在基于物联网的家庭自动化,远程控制自动化,机器人等中使用此方法。

在本教程中,我们将在树莓派中安装Apache web服务器,以从可以通过互联网从任何地方访问的网页控制LED。这是一个具有最低功能的基本教程,可以进一步修改以在基于物联网的家庭自动化,远程控制自动化,机器人等中使用此方法。

在这里,我们控制一个LED连接到树莓派使用Apache web服务器。为此,我们创建了一个HTML/php网页,其中有两个按钮-一个用于打开LED,另一个用于关闭LED。

组件的要求

•树莓派板(使用树莓派操作系统)

•LED

•250欧姆电阻

•跳线

使用SSH客户端(Putty)通过笔记本电脑或其他计算机连接Raspberry pi。为此,树莓派需要通过LAN或Wi-Fi连接到网络。如果您的树莓派有一个单独的监视器,那么最好将树莓派与监视器连接起来,这样您就不必使用任何SSH客户机。

使用树莓派web服务器控制LED

步骤1:连线

这个项目的连接非常简单——LED的正引脚连接到GPIO 27引脚,负引脚连接到一个270欧姆的电阻,电阻的另一边连接到GND引脚。

步骤2:安装wireingpi库

WiringPi是一个基于pin的GPIO访问库,用C语言编写,适用于所有树莓派版本中使用的BCM2835、BCM2836和BCM2837 SoC设备。它在GNU LGPLv3许可下发布,可以从C、c++和RTB (BASIC)以及许多其他具有合适包装的语言中使用。

1. 首先,我们将使用最新版本的Raspbian命令更新我们的Pi:

2. 现在我们将使用下面的命令安装git:

3. 现在使用git通过以下命令获取WiringPi:

4. 然后安装WiringPi库使用:

步骤3:安装Web服务器

Apache是一种非常流行的web服务器,用于创建能够托管一个或多个基于http的网站的web服务器。可以通过操作代码库或添加多个扩展/附加组件来增强Apache Web Server。在我们的项目中,我们使用HTTP服务器及其PHP扩展。

要安装Apache web服务器,我们将使用以下命令:

首先,更新可用的软件包:

现在,在终端使用以下命令安装apache2包:

要测试web服务器是否正常工作,请打开浏览器,在选项卡中输入Pi的IP地址。

要查找Pi的IP地址,请在命令行输入ifconfig。

默认情况下,Apache在web文件夹中放置一个测试HTML文件。当你从网络上的另一台计算机上浏览(无论Pi的IP地址是什么)时,就会出现这个默认网页。

在Pi上或从网络上的另一台计算机上浏览到默认网页,您将看到以下内容:

这意味着Apache web服务器正在工作。

现在我们将看到如何用自己的HTML页面更改默认网页

这个默认网页只是文件系统上的一个HTML文件。它位于var/www/html/index.html。

在终端窗口中导航到这个目录,看看里面有什么:

这表明在默认情况下,/var/www/html/中有一个名为index.html的文件,它由root用户拥有。要编辑该文件,您需要将其所有权更改为您自己的用户名。使用以下命令更改文件的所有者:

你现在可以尝试编辑这个文件,然后刷新浏览器,看看网页的变化。

在树莓派上安装PHP

现在,如果我们想要将PHP代码与HTML一起使用,那么我们必须在树莓派上进一步安装PHP扩展。使用PHP代码,我们可以创建shell命令来从PHP脚本控制LED。

为了允许Apache服务器编辑PHP文件,我们将为Apache安装最新版本的PHP和PHP模块。在终端中使用以下命令安装:

现在删除默认的index.html文件:

并创建自己的index.php文件:

现在在index.php中输入下面的代码来测试PHP安装。

保存它按CTRL + X和‘ y ’,并输入。现在在浏览器中刷新网页,您将看到一个包含大量PHP信息的长页面。这表明PHP扩展已正确安装。如果页面有任何问题,或者页面没有出现,请尝试重新安装apache服务器及其PHP扩展。

步骤5:开始编码控制GPIO引脚使用这个树莓派web服务器

现在删除index.php()文件中前面的代码,并插入下面的PHP代码来控制HTML代码体中的GPIO引脚。

下面是创建两个按钮来打开和关闭连接到树莓派的LED的完整代码。

在上面的代码中有一个PHP脚本,使用下面的代码检查哪个按钮被按下,然后相应地打开和关闭LED。

这里我们在php代码中使用了shell_exec()命令,该命令用于从php脚本中运行shell命令。在这里了解更多关于shell_exec的信息。如果直接从树莓派的终端在shell_exec里面运行这个命令,可以直接将GPIO引脚27设置为低电平或高电平。下面是直接从终端测试LED的两个命令。

完成这些后,在浏览器中输入树莓派的IP地址,在浏览器中运行代码。你会看到2个按钮-开,关,通过点击这些按钮来控制你的LED

本文编译自iotdesignpro

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭