大分工業高等専門学校紀要 第 58 号

(令和 3 年 11 月)

CADとVBAを活用した線形代数の学習教材

山本通1・片󠄂伯部雅清1・田中 真樹11機械工学科

少子化によって入学が容易な状況となったからか，小学校や中学校の教え方と高専の教え方の違いによるものか，本校では，今まで以上に一部の学生に対して，基礎教育の充実やサポートが不可欠な状況となってきている．一方，益々加速化する情報化社会において，情報教育の強化は必須となっており，本校でも，BYOD(Bring Your Own Device)の実施や情報に関するカリキュラム改訂などの準備が進められているが，教材の検討や開発も進める必要がある．そこで，学生の数学力向上を図りながら，同時に情報教育も充実させるような方法がないか検討を行い，手始めに学生が2年次に学ぶ線形代数の内容の一部を，CADで視覚化したり，VBAを使って数値計算プログラムを作成させたりするような取組みを行った．本稿では，その詳細や効果について紹介する．

キーワード : 線形代数，CAD，VBA，学力低下，BYOD，ITスキル

１．緒言

機械実習Ⅰの授業でレゴを使ったプログラミング，2年次に機械実習ⅡでMicrosoft Officeの基本的な操作方法の習得

高等専門学校は，実践的・創造的技術者を養成することや3DCADでの図面作成，機械工作法ⅠでMicrosoft Excel(以を目的とした高等教育機関で，現在は50を超える国立高等下，Excelと言う)を使っての数値計算，3年次に情報工学Ⅰ専門学校が全国に設置されている1)．本校は，これまでのでC言語によるプログラミングなど，情報スキルを向上さ実績や地理的条件(県庁所在地に設置されている)などから， せるための授業が行われているが，現状では，低学年では中学時に学業成績が比較的優秀であった生徒が入学する

情報教育に関して，十分な授業時間が確保されているとは傾向にある．しかし，昨今の少子化の影響で中学生総数が言えない．

減少しているにも関わらず，入学定員は変更されていない

以上のようなことから，学生の数学力を向上させながら，ため入試倍率は年々減少してきており，以前と比べると，情報教育も充実させるような方法がないか検討を行い，手入学が容易な状況となっており，それにともなって学生の始めに，線形代数で学ぶ内容の一部を，CADで描かせるこ

平均的な学力も低下しているように思われる．特に，本校とで理解を深めたり ，Excel付属のVBA(Visual Basic forの低学年では，微分積分や線形代数などの数学，物理や化Applications)を使って必要な関数のプログラミングをさせ学で，つまずく傾向があるように思われ，各教科担当教員たりすることで，CAD操作のスキル向上，プログラミングが様々な工夫をして，学生の理解を深めようと努力してい教育と数学の基礎力向上が図れるか検証してみることとる．このような学力低下に関する傾向は，本校だけでなくした．本稿では，それらの取組みについて紹介する．

他の高専や大学でも問題となっているようで，さまざまな

２．ソフトウェア

工夫や対策が進められている2-6)．
一方，情報活用能力を卒業後の進路を問わず習得させる目的で，2022年から，高校でもプログラミングを含む情報(1) 3次元CAD

Ⅰの授業の必修化が予定されている 7)．技術者育成を目的ご存じのように，設計，解析，生産など，ものづくりのとした高専では，当然，普通高校よりレベルの高いより実現場でCADが有効利用されている．本校・機械工学科でも践的な教育が求められることから，全国の国立高専の上部組織である高専機構が旗振り役となり，情報教育のカリキ

機械技術者として最低限のスキルを身につけさせるため，CADで設計を行ったり，CAE解析を行ったり，CAMと連動

ュラム改訂に向けた活動が行われており，本校でもそれにさせてものづくりを行ったりする授業を提供しており，2伴うカリキュラム改訂やBYODの実施準備なども進めら年次から，実際にCADを使う実習を取り入れている．本校

れている．ここで，現在，本校・機械工学科では，1年次に機械工学科では，SOLIDWORKS8)というCADを使用してお―21―大分工業高等専門学校紀要 第 58 号

(令和 3 年 11 月)

り，これから紹介する取組みは，SOLIDWORKSを使ったも３．2つのベクトルのなす角度の算出のとなるが，基本的なレベルの図形描画のみであるので，
他のCAD（フリーで利用できるものも含む）でも同様の操

本校のシラバスによると，2年次の線形代数では，前期中間試験前の第2回目の授業で内積を学習している 12)．内積作は可能と思われる．

は，2つのベクトルのなす角度を求めたり，関数の内積など(2) VBAとC言語
VBAは，Microsoft社のアプリケーション開発用言語であにもつながったりする重要な項目であるので，図形的意味

るVisual Basicをもとに，Excel，WordなどのOfficeアプリケ

CADとVBAを使い，内積について理解を深めるための教材をーションにおいて，特定の処理を自動化するために開発さ作成し，90分授業を想定して補講を行う．

や使い方をマスターしておくことが求められる．そこで，れたプログラミング言語9)で，比較的覚えやすくweb上の記事や入門書もとても多く，初心者向きのプログラミング言(1) 内積語とも言われる10)．

任意のベクトル𝑎⃗と𝑏⃗⃗とのなす角度𝜃が，以下の式(1)で表現されるのは周知の通りである．
𝜃 = 𝑐𝑜𝑠 −1 ((𝑎⃗ ∙ 𝑏⃗⃗ )⁄(|𝑎⃗||𝑏⃗⃗|))(1)

本校・機械工学科では，3年生後期から情報工学Ⅰという授業において，Borland C++ compiler 5.5というCコンパイラ11)を使用して，C言語を学ばせている．大学や他高専でも，この内積の公式を授業で習ったばかりの学生に対して，プログラミング言語としてC言語を採用している例が多く， 次節で示すようなテキストを作成し補講を行う．ちなみに，進学時に抵抗が少ない点や，C言語を学ぶことでOSや言語補講前に口頭で，「内積について何か覚えていますか？」との仕組みが理解しやすいなどの理由で，本校ではC言語をいう質問を学生にしたところ，おおよそ7割程度の学生は，プログミング言語として採用している経緯があるようで授業で習った覚えはあるが，公式や使用方法などについて，ある．しかし，初めてプログラムを学ぶ言語としては，コほとんど何も覚えていない状況であった．

ンパイル作業や文法など少しハードルが高い部分があるのも否めない．また，上記のCコンパイラでは，コマンド(2) VBAによる2つのベクトルのなす角度の算出

プロンプトに，コマンドを打ち込む作業が多く，何をやっ具体的に2つのベクトルを示し，それらがなす角度を以ているのか理解できないまま，授業を受講している学生も下のように，Excelで算出させる．最初は，図-1(a)に示すよ

一定数いるように思われ，大きな課題であった．そこで，2年次に学習する線形代数の授業の一部の計算を，初心者

うに，セルに計算式を打ち込む形，つまり通常のExcelでの向きのプログラミング言語とも言われるVBAを使用して，ら，本校機械工学科2年生では，このようなExcelの基本操算出させる方法を検討した．線形代数を選択した理由は，CADでの視覚化が行いやすいため，CADとVBAで算出し作も出来ない者も複数いると思われるので，Excelの基本的た値等の比較が行いやすいと考えたためである．次章以降る意味もある．
その後，VBAの概要について説明し，図-1 (b)のように，で，それらの取組み例を紹介する．

算出をさせ，Excelの使用方法の確認を行う．恥ずかしながなスキルが身についているか否かを学生自身に確認させ

2つのベクトルのなす角度を算出する自作関数を作成させ，自作関数の作成手順を学ばせるとともに，自作関数の有用性についても実感させ，プログラミングの基礎を学ばせる．

(a) 通常計算(b) 自作関数を使った計算
図-1 内積を使った演習例―22―

大分工業高等専門学校紀要 第 58 号

(令和 3 年 11 月)(3) ベクトルのなす角度のCADによる視覚化

キストを配布し，2つのベクトルのなす角度を，Excelで算図-2に示すように，CADで，2つのベクトル(線)を描かせ出させたり，CADで図を描き測定させたりして，内積へのて，それらのなす角度を測定させる．本校機械工学科では，理解を深める補講を行った．その後，以下のような項目の2年次前期中間試験前は，授業でCADに触れた時間はほとアンケートを取った．そのアンケート内容と結果を表-1に，んどない状況であり，CADの基本的な操作方法から，教え自由コメントの抜粋を表-2に示す．アンケート結果から，る必要があるが，ベクトルを2本描かせて，その角度を求今回行った補講が概ね学生の内積学習において有効であめる程度ならば，新たに覚えることは少ない．むしろ，今ったと読み取れる．一方，時間が足りなかったり，CAD操後，CADを使用する授業が増えるため，良いスキルアップ作に不慣れな学生もいたりするようで，教材の再検討の余の機会だと考えられる．また，実際にExcelで算出した値と， 地もあることが分かった．
CADで算出した値が同じになることで，内積に関する理解が深まるのではないかと期待し，CAD操作の手順をテキス

４．3点で構成される平面の法線ベクトル算出

ト化し，それを学生に配布し，テキストに沿って，CAD操作を覚えさせる．

本校のシラバスによると，2年次の線形代数では，前期中間試験直前の第8回目で平面の方程式を学習している．平(4) 2つのベクトルのなす角度のプログラムによる算出お面の方程式は，空間図形を扱ううえでの基本であり，3年次

よびCADによる視覚化を活用した授業と学生の反応の微分積分Ⅱでは，曲面に対する接平面を計算したり，5年内積の定義などを学生に改めて確認した後，作成したテ

次には筆者の担当する計測工学(選択授業)でも最小二乗平面を扱ったりするため，確実に理解し使えるようになって欲しい内容である．そこで，前章と同様に，CADとVBAを使い，平面の方程式について理解を深めるための教材(以下，平面教材と言う)を作成し，前章と同様に，本校・機械工学科2年生に，90分授業を想定して補講を行う．
(1) 平面の方程式
平面の方程式が，以下の式(2)で表現され，(a,b,c)が平面の法線ベクトルであることは，高専2年生では，一般常識の図-2

CAD から求めた 2 つのベクトルのなす角度ようなものである．
𝑎𝑥 + 𝑏𝑦 + 𝑐𝑧 = 𝑑(2)

また，式(2)で(a,b,c)が単位法線ベクトルの時，dの図形的表-1 内積教材に関するアンケートと結果
質問
内積の公式は，今回の授業を受ける前から覚えていましたか？
今回の授業を通して，内積に関する理解は深まりましたか？

意味が，原点から平面までの距離であることも知っておく

はいいいえ1213250241

CADを使うことで，より効果的に学習できないかを以下で検討する．
(2) 3点で構成される平面のCADによる視覚化
図-3に示すように，CADで，3つの点を描かせて，その3今回のような授業形態は，数学などを理解するのに有効だと思べき知識であると考える．これらを，前章と同様にVBAといますか？

点で構成される平面を作成させる．この時点で，CADの内部では，法線ベクトル情報も持っており，CADによっては，プロパティなどから法線ベクトル情報を確認できるが，本

表-2 内積教材に関する自由コメント
１．理解できました．
２．凄くわかりやすかったです．
３．キャド難しい．
４．改めて Excel や SOLIDWORKS が便利だなと感じた．
５．少し難しすぎて時間が足りなかった．
６．復習もできたので満足
７．Excel 等の学習は重要と感じます．ですが私個人としてはプログラムについての学習をもっと深めてほしいです．
８．説明がわかりやすかった．

図-3 異なる 3 点で構成される平面―23―

大分工業高等専門学校紀要 第 58 号

(令和 3 年 11 月)

図-4 外積を使った演習例
表-3 平面教材に関するアンケートと結果
質問
このような授業形態は，有効だと思いますか？
今回の授業を通し，平面の方程式に関する理解は深まりましたか？
内積と平面の方程式について，公式も含めて，今，説明できますか？

はいいいえ

1109

28

3

表-4 平面教材に関する自由コメント
１．時間が無かったので平面の方程式が理解しきれなかった．
２．少し難しかったです３．ありがとうございました
４．わかりやすかったです．
５．楽しかったです
図-5 異なる 3 点で構成される平面の法線ベクトル

講対象の本校・機械工学科2年生の学生は前章でも述べたを算出するユーザーフォーム

ように授業でほとんどCADを使用していない状況であったが，CADによる平面作成までは操作が単純なため，大き校で使用しているCADでは，その情報がユーザー側では，な問題もなく終えることができた．しかし，作成した平面見ることができない仕様のようである．したがって，作成に単位法線ベクトルを描く工程で，多くの学生が意図したした平面に単位法線ベクトルを描く手順を資料化し，それ通りに法線ベクトルを描けない事象が発生した．に沿って各学生にCAD上で平面の単位法線ベクトルを描

これは，使用したCADに多くの学生が慣れていないことが大きな要因ではあると思うが，使用したCADが平面の法かせる．

線ベクトルを容易に描く仕様でないことも要因の1つであると考えられる．筆者も，これまで複数のCADの使用経験(3) VBAによる法線ベクトルの算出
CADで描いた異なる3点から2つのベクトルを取出し，こがあるが，平面の法線ベクトルを描くだけで，今回ほどのの2つのベクトルから外積を使って，CADで描いた平面の法作業が必要なCADを使用した経験はなく，提案したような線ベクトルを求めることができるのは周知の通りである．

授業を行うには，より適したCADを選定する必要もあるとそこで，平面を構成する2つの異なるベクトルを代入する考える．以上のように，CADで作成した平面に単位法線ベことで，その平面の単位法線ベクトルを算出する自作関数

クトルを描く工程で学生からの支援要請が多発したため，をVBAで作成させる．その演習例を図-4に示す．また，余裕VBAに関する説明を駆け足で行うことになってしまう感のある者には，コマンドボタンやテキストボックスを使っがあった．
続いて，補講後に行ったアンケートの内容と結果を表-3て，図-5に示すようなユーザーフォームを作成させる．と表-4に示す．アンケート結果から今回行った補講が，前(4) 3点で構成される平面の法線ベクトル算出およびCAD章で紹介したテキストと同様に，概ね有効であったと考えによる視覚化を活用した授業と学生の反応られる．一方，現状のテキストではCAD利用時の質問対応

前期中間試験前に，平面の方程式の定義などを改めて確に時間がかかる可能性が高いため，90分授業では，ボリュ認した後，作成した平面教材に沿って，補講を行った．補ームが過大であることも分かった．

―24―

大分工業高等専門学校紀要 第 58 号

(令和 3 年 11 月)

５．結言
学生の数学力を向上させながら，情報教育も充実させる

参考文献
1) 篠崎烈, 坂本武司, 石橋大作, 中島正寛: 機械加工や測定の基礎を学ぶ高専の機械実習教育, 精密工学会誌, 86,6, pp.485-488, (2019)

ことを目的として，線形代数で学ぶ内積と平面の方程式を題材に，テキストを作成し，それに沿って補講を行った．
本取組みで得られた結果や今後の課題等を以下に示す．

2) 堤厚博, 太田和彦: 数学教育における視覚化を用いた

1）CADで異なる2つのベクトルを描かせ，それらのなす角度試み－フーリエ級数の視覚化による数式の理解度向上－, 平成28年度工学教育研究講演会, pp.52-53, (2016)

が，手計算やVBAで作成した自作関数で算出した値と同じ

3) 阿部孝之: 低学年における数学の成績不振者の問題点になるか確認させた．授業後に行ったアンケートでは，回に対応した授業改善について, 木更津工業高等専門学校紀要, 50, pp.50-55, (2017)

答してくれた学生全員から内積に関する理解が深まったとの回答を得た．一方，時間が足りなかったり，CAD操作に

4) 小林昭三: 物理教育の現状と問題点－学力低下問題と不慣れだったりする学生もおり，一部に検討の余地がある

科 学 教 育 シ ス テ ム － , 大 学 の 物 理 教 育 , 2, pp.30-35,(2001)

ことも分かった．

5) 齊藤亜由子, 若生昌光, 磯部浩一, 渡部英昭, 今田良徳,
2）CADで異なる3点から平面を作成させ，さらにその平面か

宮脇和人: 体験型学習を取り入れた高専における機械ら単位法線ベクトルを描かせ，それがVBAで作成した自作

工学初年次教育の試み, 工学教育, 67, 3, pp.78-83, (2019)

関数で算出した値や手計算の値と同じになるか確認させ

6) 穴田有一: 大学初年次物理学の学修における基礎知識の定着, 大学の物理教育, 24, 1, pp.19-23, (2018)

ようと補講を行った．しかし，CADで単位法線ベクトルを描く部分で，多くの学生が混乱し，想定した以上に時間がか

7) 渡部信一: AI研究からわかる「プログラミング教育」成かることが分かった．今後は，CADの操作手順を紙で配布す

功の秘訣, 大修館書店, pp.1-6, (2019)

るだけではなく，操作手順の動画も準備するなどの対応を

8) 牛山直樹ら: よくわかる3次元CAD

SOLIDWORKS入門 2014/2015/2016対応, 日刊工業新聞社, (2016)

考えたい．

9) 金 城 俊 哉 : は じ め て の 最 新 Excel VBA ［ 決 定 版 ］
3）今回のような授業形式は時間がかかったり，CADやプロ

Excel2019/Windows10 完 全 対 応 , 秀 和 シ ス テ ム , p.12,

グラミングに関する質問対応で人手が必要であったりす(2020)

るため，通常授業で行うには無理があると考える．しかし，10) リブロワークス: スラスラ読めるExcel VBAふりがな
プログラミング, インプレス, p.11, (2018)

数学で習った内容について復習や再確認ができるだけでなく，CADやプログラミングに関する知識や技能も向上さ

11) 砂田紀一郎: はじめてのCプログラミング基本マスター編, 秀和システム, pp.19-21, (2007)

せることもできることから，有効な教育方法ではないかと考えている．一方，これらの教育手法について今回は受講

12) 武口博文: 線形代数, 大分工業高等専門学校webシラ者へのアンケートで，概ね高い評価を得ることができたが，教育効果については確認できておらず，検討の余地がある．

―25―

バス, 2021.
(2021.9.30受付)