top of page

記事概要

ラズベリーパイ(Raspberry Pi)を購入し、実際にスイッチを押すとLED点灯する装置を作ってみました。


ラズベリーパイとは?


ree

ラズベリーパイとはプリント基板にCPUやコネクタ、入出力インタフェースなどの最低限の機能のみを持たせた小型コンピュータのことです。

電子工作と言えば似たような機器に、Arduinoというマイコンボードがありますが、ArduinoにはOSが存在しません。

Webを用いたシステムや複数のシステムを連動させるようなものも作ってみたいと考えたため、今回はラズベリーパイを題材としました。

どちらも元々、学習用に開発された機器ということもあり数千円程度で購入できるコスパの良さも魅力の一つです。

買ったもの


・ラズパイ3A+ スターターキット
ree

ラズベリーパイ本体とケース、OSインストール済みのmicroSDカード、SCアダプタとHDMIケーブルが付属しているものを購入しました。

本体のみ購入する場合、OSをインストールしたmicroSDカードを用意する必要があります。

OSインストールする手順

ラズベリーパイにOSをインストールする手順を以下にまとめます。

ラズベリーパイのモデルやOSのバージョンによって若干の違いがあるかもしれませんが、一般的な手順をご紹介します。


OSのダウンロード: 公式のRaspberry Piウェブサイトから、お使いのラズベリーパイモデルに対応したOSイメージをダウンロードします。例えば、Raspberry Pi OS(以前はRaspbianと呼ばれていました)が一般的な選択肢です。


MicroSDカードのフォーマット: フォーマット済みのmicroSDカードを用意します。


OSイメージの書き込み: ダウンロードしたOSイメージをBaleneEtcher等のツールを使用して、MicroSDカードに書き込みます。


MicroSDカードの挿入: 書き込みが完了したら、MicroSDカードをラズベリーパイのMicroSDカードスロットに挿入します。


初回起動: ラズベリーパイに電源を接続して起動します。初回起動時には、OSの設定画面が表示されることがあります。ここで基本的な設定(言語、キーボードレイアウト、パスワードなど)を行います。


アップデートと設定: OSが起動したら、まずはアップデートを実行します。ターミナルを開き、以下のコマンドを実行します。

sudo apt update
sudo apt upgrade 

その後、必要に応じてアプリケーションやライブラリのインストール、ネットワーク設定、ユーザーアカウントの設定などを行います。

これらの手順を基本に、お使いのラズベリーパイモデルとOSに合わせて詳細なガイドを参照しながら進めてください。



・ブレッドボード
ree

ブレッドボードとは各種電子部品やジャンパ線をボードの穴に差し込み、手軽に電子回路を組むことの出来る基板です。

はんだ付けをしなくても手軽に電子回路を組むことができ、配線を何度も再利用できるため、学習や電子回路の簡単な動作確認のために使用されます。



・その他部品

今回使用する部品は、LEDと押しボタンと、配線のためのジャンパ線に加えて、電圧を調整するための抵抗を用意しました。

LEDや抵抗を選定する際に、電子回路の組み方や抵抗の選定方法も学ぶ必要がありますが、これはまたの機会にまとめたいと思います。

今回はラズベリーパイ本体から流れる電流と、LED電球のサイズを考慮して、200Ωの抵抗を使用しました。

・実際に電子回路組んでみた

ラズベリーパイ本体の初回セットアップを済ませて、ブレッドボードにLEDと抵抗と押しボタン、ジャンパ線を繋げGPIOという外部接続用のピンへ組付けました。

ree


・プログラミングコード

電子回路の用意はできたので、コーディングをしていきます。

ラズベリーパイにはPython3と、開発ツールとしてThonny Python IDEというものがデフォルトでインストールされているため、今回はこちらを使用しました。

import RPi.GPIO as GPIO
import time  

# GPIOピン番号の設定 
switch_pin = 18 # スイッチに接続したGPIOピン番号 
led_pin = 21    # LEDに接続したGPIOピン番号

# GPIOのモード設定 
GPIO.setmode(GPIO.BCM) 
GPIO.setup(switch_pin, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)  
GPIO.setup(led_pin, GPIO.OUT)  
try:
    whileTrue:
        # スイッチの状態を読み取る
        switch_state = GPIO.input(switch_pin)
        
        # スイッチが押されているかどうかをチェック
        if switch_state == GPIO.LOW:  # スイッチが押されている場合
            GPIO.output(led_pin, GPIO.LOW)  # LEDを点灯
        else:
            GPIO.output(led_pin, GPIO.HIGH)   # LEDを消灯

        time.sleep(0.1)  # 少しの遅延を入れてループを続ける
        
except KeyboardInterrupt:
    GPIO.cleanup()  # プログラムが終了したらGPIOをクリーンアップ

・動いている様子

ree

ree

最後に

初めてのラズベリーパイ導入編でした。

コードの詳細や、電子回路の組み方を詳細に解説することはできませんでしたが、今後もラズベリーパイを使った電子工作を通じて、新しいプログラミング技術等。アイデアを具現化する方法を学んでいく予定ですので、別の機会に詳しく解説してみたいと思います。

以上です。

 
 
 

はじめまして、こんにちは。


IT化が日々進歩している昨今、

2020年からは小学校にてプログラミング教育の必修化が整備されるなど、子供から大人まで世代関係なく誰しもが情報技術の進歩へ注目せざるを得なくなってきました。


それに伴い、IT企業への転職者やプログラマーなどに興味を持つ若者が増えてきたように思います。私自身もその内の1人で、未経験で技術者に転身して1年となります。


今回はそんな初心者の私だからこそおすすめしたい初心者向けプログラミング学習アプリを2つ紹介していこうと思います。


IT企業への入社を考えている方、プログラミングに少しでも興味のある方への参考になれば幸いです。

※内容には個人的な使用感が含まれています。



ree



Progate(ios/Android対応) *web版もあり


ree

特徴

1.イラスト中心でわかりやすい

2.学べる言語が豊富

3.充実したレッスン項目



〇学べる言語

HTML, CSS, Javascript, Ruby, Python, Java, SQL, PHP, Go

〇初歩的なレッスンは無料 (一定レベル以上は有料)

〇レッスン項目が豊富 (約370項目)


ree





画像をタップしてアプリ詳細へ



☆使用感

・イラストやキャラが多彩に使われていてモチベーションが上がりやすい

・スマホを横向きで使用するため使いづらい場合も

・全ての項目を学習したい場合は有料 (1/6/12か月プラン)

 →金額が発生するため少々抵抗を感じる方も...


☆web版について

・pcでの学習が可能

・実際にコードを書いて学習できる

・アプリ版よりも学べる言語や学習内容が豊富

 (jQuery, Sass, Ruby on Rails, React, Node.jsなども学習可能)

・テキストエディタの準備は不要




エンジニア大学(iosのみ対応)


ree

特徴

1.シンプル

2.面倒な登録作業なし

3.レッスンは全て無料



〇学べる言語

 HTML, CSS, Javascript, PHP, Python

〇シンプルな作りのアプリで使いやすい

〇アカウント登録の必要がないためすぐ始められる

〇1度に学習できるのは3レッスンまでと制限がある

〇IT関連のお役立ちコラムが読める


ree





画像をタップしてアプリ詳細へ



☆使用感

・スマホで使用しやすい

・初歩的なレッスンのみ (約70レッスン)

 →基本的な知識がある方、それ以上のレベルアップを図りたい方には不向き

・体力がないとレッスンができない (1レッスンにつき1体力消費)

 →30秒程の広告をみるか体力が回復するまで待たないとレッスンができない【難点】



~ アプリの共通点 ~

・ブロックを並び替えるパズルゲーム仕様

初心者向けの分かりやすい説明

タブレット・スマホ対応可 



~ まとめ ~

 本記事を書くにあたり2つのアプリを選んだ理由は、コーディングの学習方法や内容、そして初心者でも利用しやすい点など似ている部分が多いと感じたからです。

「プログラミング言語」とは「コーディング」とは一体どういったものなのか、いずれを使用したとしてもご自身の学びに繋がるはずです。



☆以下のような方には特におすすめです。

・どの言語を学ぶべきか悩んでいる方

・新しい言語の学習を始めたいと考えている方

・プログラマーに興味のある方

・IT企業への就職を考えている方



初心者の方や特定の言語に馴染みのない方などなど...

学習の導入として手始めに利用してみて損はないかと思います。

ご興味がありましたらこの機会にぜひ活用してみてはいかがでしょうか。


最後までお読みいただきありがとうございました^^





 
 
 
  • kiwatsuki
  • 2023年9月20日
  • 読了時間: 3分

 今回は、昨今企業の業務改革の手法のひとつとして注目されている「BPR」にフォーカスして解説します。

 90年代にも関心の高まったBPRが昨今、改めて注目を集めているのはなぜでしょうか?

 

 BPRとITの関係性や注意点について、説明します。


1. BPR(ビジネスプロセス・リエンジニアリング)とは


 BPR(ビジネスプロセス・リエンジニアリング)は、組織の業務プロセスを根本的に見直し、効率化や競争力の向上を図る手法です。

 これは、従来のプロセスを一から再構築し、新しい方法論やテクノロジーを導入することを意味します。


 BPRは、組織の変革や革新に伴う業務プロセスの最適化を目指し、効率、品質、柔軟性を向上させるためのアプローチとして注目されています。


ree


2. BPRの考え方


 BPRは、従来の業務プロセスを一から見直すことで、無駄や冗長性を排除し、効率を向上させることを目指します。


 具体的な手法としては、プロセスの分析、改善アイデアの収集、新しいテクノロジーの適用などが含まれます。BPRを遂行する際には、組織全体の協力とリーダーシップが重要とされています。



3. ITが担う役割


 ITシステムは、BPRの遂行において重要な役割を果たします。ITは効率化や情報の正確性向上に不可欠なツールとして利用されます。

 具体的には、自動化された業務フロー、データの集約と分析、コラボレーションツールの導入などが挙げられます。


 ITはBPRを支える強力な要素となり、プロセスの再構築を円滑に進めるのに役立ちます。


4.代表的なITシステム


 BPRの遂行には、以下のようなITシステムやツールが利用されます。


  • ERPシステム(Enterprise Resource Planning)

 企業の経営資源を一元に管理し、企業全体の最適化を実現するためのシステムです。

 「会計」「人事」「生産」「物流」「販売」といった業務のデータを一元管理することで、異なる業務間でのデータのやりとりの手間がなくなり、さらにはリアルタイムで企業の経営状況が確認できるようになります。


  • CRMシステム(Customer Relationship Management)

 顧客情報を集約し、管理するためのツールを指します。

 単に顧客情報を保管しておくだけではなく、顧客ニーズを細かく分析し、適切なタイミングと手法でアプローチしていくために利用されます。


  • シェアードサービス

 シェアードサービスとは、間接部門の業務を見直し、これをシェア(共有)する手法です。

 企業内の事業所や、グループ企業ごとに存在する財務・経理、総務・人事、情報システム、購買、法務、監査などを1カ所(シェアードサービスセンター)に集約、業務を標準化して業務効率化・コスト削減を見込むことができます。



5. 注意点


 ただし、ITシステムを導入するだけではBPRの成功は保証されません。

 目的を明確に定義し、プロセス再設計の際にテクノロジーをどのように活用するかを検討することが重要です。


 また、従来の業務プロセスの良さを活かしながら改善することも大切です。BPRは組織全体の文化と組み合わせて考える必要があります。


 BPRとITは、組織の変革と効率化を促進するために連携して活用される重要な要素です。組織は変化に対応し、革新的なアプローチを取り入れることで、競争力を高めることが期待できます。

 
 
 
bottom of page