オフィスの自家製ビルド信号

背景



計画的な継続的統合への移行に関連して、オフィスの信号機に関する記事をいくつか読んで、このような温かいランプデバイスを手に入れたいと思いました。 その結果、それはまったく暖かくなく、チューブ状ではないことが判明しましたが、それについては後で詳しく説明します。



このトピックに興味のある人は、新しい信号機の価格が500ドル前後で変動することをすでに知っています。 使用済みの廃止されたデバイスを見つける試みは失敗しました。 どちらのオプションも、予算とオフィスの2人の愛好家の魂を満足させることができなかったため、交通信号自体を灯すことにしました。



アイデア



原則として、信号機の設計に複雑なものはありませんが、どのようなレイアウトがまだ作成されました。 そのため、何をカットする必要があり、それをどのように行うのが最善かを想像するのは簡単でした。



画像



発表のあるサイトでレイアウトを作成する前に、幸運にもソビエトの信号機からガラスを見つけました。 オリジナルのガラスは何よりも建築物の信頼性を高めるため、これは大きな安心でした。 したがって、ケースの寸法は、メガネのサイズ、および電源、配線などの内部コンポーネントの寸法によって決まりました。



主な「脳」は、いくつかの理由でラズベリーパイに指定されました。 1つ目は、「ラズベリー」での以前の実験後の存在です。2つ目は、外部からのトラフィック制御の実装の単純さ、さまざまな種類のソフトウェア、wifiなどのインストールです。



本体



もちろん、それはすべて身体から始まりました。 その製造には、屋外広告の製造に使用されるPVCプラスチックが使用されました。 加工が非常に簡単で、出口でのスーパーグルーとの組み合わせにより、かなり頑丈な構造になります。 適切なサイズにカットされたプラスチックが広告代理店に注文されました。 切断の精度は予想よりわずかに悪かったため、船体を接着した後、プラスチックのパテとエメリーでかなり一生懸命作業しなければなりませんでした。 その結果、ここでそのようなケースを得ました。



画像



プラスチックは非常に順応性が高いため、誰も想像できなかったほどバイザーを作るのが簡単でした。 バイザーの彫り込まれたディテールは熱湯に投げ込まれ、冷却する前に2リットルの瓶で曲げられました。 はい、はい、2リットル缶の直径はガラスと同じでした。 この統一はソ連にありました!



これまでのところ、単にガラスを適用するだけで、将来の信号機をすでにはっきりと見ることができましたが、船体の段階でさえ、このアイデアには何も良いことはないようでした。



画像



黒い「トラフィックライト」カラーでペイントした後、すべてがさらに素晴らしいように見え始めました。 ガラスの留め具を覆うために迷彩コードも接着されており、構造をより完全な外観にしました。



画像



エレクトロニクス



安全性、エネルギー消費量の削減、その他多くの理由から、LEDが光源として選択されました。 わずか27個、色ごとに9個。 彼らのために、それぞれ27の穴がハウジングに開けられました。



画像



LEDの修理と取り付けを容易にするため、プラスチックのマトリックスに配置し、ハウジングの穴と一致するように配置しました。



画像



これらは、LEDの1つが点灯した場合に簡単に取り付けおよび取り外しできます。 ロジックを制御するには、ラズベリーpiのGPIOピンをそれぞれ使用します。制御ロジックとして、3V電圧とLEDマトリックスに供給される12Vのスイッチングで制御される3つのリレーでボードを作成しました。



画像



テスト段階では、最終アセンブリの前に、アセンブリは次のようになりました。



画像



すべてがケースに「投げ込まれ」、組み立て時に十分な長さのコードが手元になかったため、一時的な220V電源コードが取り付けられています。 内部には2つの電源もあります。 LEDに電力を供給するための12V、ラズベリーパイ用のUSBポートを備えた2番目のユニット。



画像



ソフトウェア



制御を容易にするために、Python用のmod_fcgiを備えたlighttpdサーバーが外部にインストールされました。 したがって、ブラウザからモードを簡単に制御できます。 だから、自分を甘やかすのは便利でした。 後に、Jenkins用にコードを作成し、それをポーリングして信号機のステータスを変更します。 Pythonは偶然選ばれたわけではなく、その助けにより、 wiringpi.comライブラリのセットを使用してraspberryのGPIOピンを管理することは非常に簡単です。



管理用のシンプルなWebスクリプトコード。後で上記のコードに置き換えられました。



#!/usr/bin/pythonRoot # Bring in the libraries import RPi.GPIO as G from flup.server.fcgi import WSGIServer import sys, urlparse, time # GPIO lights map light_r = 4 light_y = 17 light_g = 22 # Set up our GPIO pins G.setmode(G.BCM) G.setup(light_r, G.OUT) G.setup(light_y, G.OUT) G.setup(light_g, G.OUT) # Offs all lights def offLights(): G.output(light_r, False) G.output(light_y, False) G.output(light_g, False) # Function which is called for each http request we receive def app(environ, start_response): # start our http response start_response("200 OK", [("Content-Type", "text/html")]) # look for inputs on the URL i = urlparse.parse_qs(environ["QUERY_STRING"]) yield (' ') # flup expects a string to be returned from this function # if there's a url variable named 'q' if "mode" in i: if i["mode"][0] == "red": offLights() G.output(light_r, True) elif i["mode"][0] == "yellow": offLights() G.output(light_y, True) elif i["mode"][0] == "green": offLights() G.output(light_g, True) elif i["mode"][0] == "off": offLights() #Run app WSGIServer(app).run()
      
      







費用



2人が仕事をするのに約1週間、仕事の後1日1時間かかりました。 お金のために:

ラズベリーパイモデルB 50ドル
カットケース用PVCプラスチック 15ドル
マットブラックペイント 10ドル
電源 10ドル
リレー、LED、その他のささいなこと 10ドル
ラズベリーのWifiホイッスル 10ドル
グラス 7ドル
パテ 5ドル
合計:$ 117


おわりに



デモモードのビデオから始めましょう。







ビデオからわかるように、LEDの冷たい輝きがガラスと組み合わされて、青みがかった色合いを与えました。 現在、保守性が設計に組み込まれている限り、修正オプションを検討しています。

予算の差が非常に大きく、熱意が満たされ、結果が満足のいくものであることに同意します。 結果は、温かいランプではなく、冷たいLEDでしたが、それでも信号機でした。近い将来、その目的を果たすことを望みます。 継続的な統合への移行はまだ完了していません。



みなさん、幸運を祈ります。また、信号機を作る際に赤いものを減らしてください!



All Articles