ARDUINO 電位計Potentiometer的原理

什麼是電位計

電位計Potiometer也稱為可變式電阻VR (variable resist)
藉由調整旋鈕可停整元件的電阻
其構造簡圖如下





用 Google keep 抓取圖片內文字的方法

當想要抓取圖片內文字時,又不想一個字一個字慢慢打,那麼可以使用 Google Keep 來抓取文字,只要簡單三個步驟:
1.在Keep中新增一則記事並貼上圖片檔

2.下方三個點點一下並按下擷取圖片文字

3.輕輕鬆鬆得到文字檔



Excel函數遇空格回傳值為0解法

當使用 excel 函數如:vlookup hlookup index 等查資料時,若遇到空白格回傳值會變成「0」,此時只要將公式最尾端加上 「&"" 」,則回傳值就能變成空格了。如下圖所示:




比較運算子 Comparison Operators

比較運算子 Comparison Operators

用來比較運算子左邊與右邊的數值 

回傳值是 1(true)或 0(false)

ARDUINO Push button 按鈕介紹

按鈕(Push button)的構造
如下圖所示
當按鈕沒有按下時腳13相通腳24相通但1/32/4 不互通
當按鈕按下時腳1324相通

ARDUINO LED燈閃爍效果

LED介紹
LED中文是發光二極體,英文是Light Emitting Diode。
一般的LED燈有兩隻接腳,長腳接正,短腳接負,通電後就會發亮。
本次使用ARDUINO的第13號引腳當正極

13號引腳與ARDUINO板子上的內建LED連接在一起。

ARDUINO 數位類比I/O語法



定義引腳模式

語法 Syntax
pinMode(pin,mode)。
pin : Arduino 板子的引腳
mode : 有三種模式,分別是OUTPUT,INPUT,INPUTPULL_UP。

ARDUINO 程式語法

 


ARDUINO 程式語法,內容是官網所提供資料,分成函式、結構、變數三大類型。

ARDUINO 用RGB LED 做簡單調色盤

RGB LED 介紹
可以想像成有紅色(R) 綠色(G) 藍色(B)三色的LED共用一個陰極(-)
使用 PWM(pulse width modulation)技術調出想要的顏色

ARDUINO Push button按鈕數位輸入開關LED

接線圖
X1 Arduino Uno R3
X1 單色LED
X1 220~10k Ω 電阻
X2 按鈕
LED燈需要接上電阻 避免電流過大燒壞
左邊按鈕按下 LED 亮燈
右邊按鈕按下 LED 暗燈

ARDUINO if else 判斷式語法



語法結構
if (條件式一){
符合條件一執行
}
else if(條件式二){
符合條件二執行
}
else if(條件式三){
符合條件三執行
}
else {
以上條件都不符合的時候執行
}

由於程式是由上往下判斷 因此是由上方開始往下判斷

範例一
利用按鈕當數位輸入值控制內建LED燈開關

int button=8;

void setup() {
pinMode(button,INPUT);
pinMode(13,OUTPUT);
}
void loop() {
  if(digitalRead(button) == LOW){
    digitalWrite(13,HIGH);
  }
  else{
    digitalWrite(button,LOW);
  }
}

範例二

使用超音波模組輸入值控制內建LED燈開關
條件一 當距離<30公分 LED燈1秒閃10次
條件二 當距離<60公分 LED燈1秒閃5次
其他 LED關閉

const byte trigPin=5;
const byte echoPin=6;
int LED = 13;
float d;

void setup() {
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  pinMode(LED,OUTPUT);
  Serial.begin(9600);
}

void loop() {
  d = sr04() * 0.017;
  Serial.print(d);
  Serial.println("cm");
  delay(1000);
  if (d <= 30){
    for(int i=1;i<=10;i++){
    digitalWrite(LED,HIGH);
    delay(100);
    digitalWrite(LED,LOW);
    delay(100);
    }
  }
    else if (d <= 60){
    for(int i=1;i<=10;i++){
    digitalWrite(LED,HIGH);
    delay(200);
    digitalWrite(LED,LOW);
    delay(200);
    }
  }
  else{
    digitalWrite(LED,LOW);
  }
}

unsigned long sr04() {
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);  
  digitalWrite(trigPin, LOW);
  return pulseIn(echoPin, HIGH);
}

ARDUINO for 迴圈語法


語法結構
for (變數初始值;重複執行的標準;變數的增減){
執行的動作
}

舉例說明
for (int i=0;i<10;i++){
  int a=i*i;
}

i=0 //變數的初始數值
i<10 //符合重複執行的標準
i++ //i每次增加1
int a=i*i //執行的動作

i = 0 符合重複執行的標準i*i = 0i+1後繼續執行程式
i = 1 符合重複執行的標準i*i = 1i+1後繼續執行程式
i = 2 符合重複執行的標準i*i = 4i+1後繼續執行程式
i = 3 符合重複執行的標準i*i = 9i+1後繼續執行程式
.
.
.
i = 9 符合重複執行的標準i*i = 81i+1後繼續執行程式
i =10 不符合重複執行的標準停止執行程式

範例一
內建LED燈閃100次

int led = 13;

void setup() {
pinMode(led,OUTPUT);
for(int i=0;i<100;i++){
  digitalWrite(led,HIGH);
  delay(100);
  digitalWrite(led,LOW);
  delay(100);
}
}

範例二

內建LED燈從暗到亮,再從亮到暗。

int led=13;

void setup() {
pinMode(led,OUTPUT);
for (int br=0;br<=255;br++){
  analogWrite(led,br);
  delay(30);
}
for (int br=255;br>=0;br--){
  analogWrite(led,br);
  delay(30);
}
}

排除0050與006208外,市值型ETF還有哪些?



排除0050與006208外,市值型ETF還有以下四檔

00850 元大台灣ESG永續
經理費:0.30%

保管銀行
永豐商業銀行
配息
季配 2月5月8月11月
成分股
約82檔
台積電占比
28.66%
特色
季配 + 永續 + 市值型
單一個股權重上限 30% 限制

追蹤的臺灣永續指數,是以包含環境保護、社會責任、公司治理等 14 項 ESG 評鑑篩選成分股後,透過市值加權方式決定權重

00692 富邦公司治理

經理費
0.15%
保管銀行
中國信託商業銀行
配息
半年配 7月10月
成分股
100檔
台積電占比
37.79%
特色
公司治理評鑑結果前20%的公司

刪除近一年日平均交易金額最小的20%股票

最近1年底的每股淨值不低於面額


00922 國泰台灣領袖50

經理費:0.20%

保管銀行
中國信託商業銀行
配息
半年配 3月10月
成分股
50檔
台積電占比
28.76%
特色
成分股以MSCI臺灣指數為基本選樣範圍,依市值大小做為原始權重,排除「爭議性武器」、「近4季EPS為負」、「MSCI低碳轉型分數最後20%且ESG評級為B(含)以下之公司」,再以低碳轉型分數進行個股市值權重調整。最後依調整後權重排序取前50檔。市值領袖匯聚,高度追蹤台股表現 !

00923 群益台灣ESG低碳

經理費
0.32%
保管銀行中國信託商業銀行
配息
半年配 2月8月
成分股
50檔
台積電占比
30%
特色
首檔台股低碳ETF 搶先布局低碳商機

聚焦碳金龍頭企業 擁抱台股護國神山群

嚴選ESG評鑑優等生,只取ESG前段班

要如何選擇?
用排除法來選擇 先排除單一成分股占比過高 00692
再排除經理費較高的00850/00923
因此最後的選擇是 00922 國泰台灣領袖50

ARDUINO 脈波寬度調變PWM介紹

 


脈波寬度調變PWM Pulse Width Modulation
數位電壓輸出只有開(on)與關(off)兩種狀態 

藉由 PWM 極短時間的重複開關可以讓數位輸出也有類比輸出的效果

使用此功能能讓數位電壓輸出有類比輸出的效果




上圖Arduino中最短的時間週期是 2 ms在此周期中開的時間/cycle時間 稱為 duty cycle 
當 duty cycle = 100%時 平均輸出電壓是 5 volt, = analogWrite(255)
當 duty cycle = 75%時 平均輸出電壓是 5*0.75=3.75 volt, = analogWrite(191)
當 duty cycle = 50%時 平均輸出電壓是 5*0.50=2.5 volt, = analogWrite(127)
當 duty cycle = 25%時 平均輸出電壓是 5*0.25=1.25 volt, = analogWrite(64)
當 duty cycle = 0%時 平均輸出電壓是 5*0=0 volt, = analogWrite(0)




ARDUINO LED 呼吸燈效果教學



接線圖
X1 Arduino Uno R3
X1 單色LED 
X1 220~10k Ω 電阻
LED燈需要接上電阻 避免電流過大燒壞
LED正極需插入有 PWM 功能之 pin腳(有~符號就是PWM)
有關PWM可參考這裡




Arduino IDE code

以下提供三種程式碼

第一種
int YellowLED = 6; //定義 pin6為 YellowLED
int intensity = 0; //定義 光強度為intensity
int rate = 5;      //定義 光強度的變化率
 
void setup()
{
pinMode(YellowLED,OUTPUT); //輸出
Serial.begin(9600); //開啟串列監視器
}

void loop()
{
analogWrite(YellowLED,intensity);
intensity = intensity + rate;
  if (intensity ==0){
  rate = 5;
  }
  if (intensity ==255){
    rate=-5;
  delay(30);
  }
Serial.println(intensity);
delay(1000);
}

第二種
int ledPin = 6;
void setup() {
  // initialize ledPin (pin 6) as an output.
  pinMode(ledPin, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  for (int brightness = 0; brightness < 255; brightness++) {
    analogWrite(ledPin, brightness);
    delay(10);
  }
  for (int brightness = 255; brightness >= 0; brightness--) {
    analogWrite(ledPin, brightness);
    delay(10);
  }
}

第三種 Arduino IDE 內建的 fading

int led = 6;         // the PWM pin the LED is attached to
int brightness = 0;  // how bright the LED is
int fadeAmount = 5;  // how many points to fade the LED by

// the setup routine runs once when you press reset:
void setup() {
  // declare pin 6 to be an output:
  pinMode(led, OUTPUT);
}

// the loop routine runs over and over again forever:
void loop() {
  // set the brightness of pin 9:
  analogWrite(led, brightness);

  // change the brightness for next time through the loop:
  brightness = brightness + fadeAmount;

  // reverse the direction of the fading at the ends of the fade:
  if (brightness <= 0 || brightness >= 200) {
    fadeAmount = -fadeAmount;
  }
  // wait for 30 milliseconds to see the dimming effect
  delay(30);
}





ARDUINO 超音波測距模組 HC-SR04 使用教學


接線圖
X1 Arduino Uno R3
X1 HC-SR04超音波測距模組
trig 給電壓發出音波訊號
echo 為音波碰到障礙物反彈回來訊號


Arduino IDE code
//超音波測距模組HC-SR04
const byte trigPin=5; //超音波測距的 觸發腳
const byte echoPin=6; //超音波測距的 回應腳
float d;
int LED = 13;
 
void setup() {
  //設定輸出輸入
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  pinMode(LED,OUTPUT);

  //開啟串例傳輸
  Serial.begin(9600);
}

void loop() {
  //測距離
  d = sr04() * 0.017;
  Serial.print(d);
  Serial.println("cm");
  delay(1000);
  if (d <= 30){
    digitalWrite(LED,HIGH);
  }
  else{
    digitalWrite(LED,LOW);
  }
}

//超音波測距函式  
//送 10μs 脈波給 HC-SR04 觸發腳(trigger pin),並計算 回應腳(echo)變成高電位的時間
unsigned long sr04() {
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);  
  digitalWrite(trigPin, LOW);
  return pulseIn(echoPin, HIGH);
}






免費市場報價小工具 Trading View Widget

Tarding View 免費市場報價連結

獲取功能強大的圖表並將即時金融行情增加到自己的網站,只需複製貼上簡單的iFrame代碼即可。

提供多種商品報價 外匯指數期貨股票財經日曆等等

以下示範幾種報價的效果


範例一 K 線圖

範例二 財經小日曆

資產配置回測免費網頁 Portfolio visualizer

介紹一個資產配置回測的免費網頁

Portfolio visualizer 網頁中的 Backtest Portfolio

網頁中提供最多三種投資組合以提供比較
例如:
投資組合一 : QQQ 80% + TLT 20%
投資組合二 : VOO 80% + TLT 20%
投資組合三 : DIA 80% + TLT 20%
回測區間最早可重 1980 年開始直到現在, 當然有些資產成立的時間並沒有那麼早
回測可得到投資組合總報酬率 年化報酬率 最大回檔 夏普值等資料

詳細的操作可以參考以下連結
免費資產配置策略回測平台:Portfolio Visualizer使用說明
資產配置很難嗎?這個工具也許能幫到你
回測是什麼?3個步驟帶你學會操作免費的美股投資



全球主要的指數有哪些


什麼是指數
指數是一系列股票的組合,由指數便可觀察整體市場的狀況。

指數計算方法
市值加權指數(Capitalization-weighted Index)和價格加權指數(Price-weighted Index)。

第一個股票價格指數是由Charles Dow先生於1896年創立,被命名為「道瓊斯指數」。到今天,道瓊斯指數包含了30家美國最大公司的股票價格。以下是九個最重要及最常交易的指數列表。

全球重要的指數
道瓊斯工業平均指數(US30)
包括了全美國最具有影響力的30家公司,是一個價格加權指數。這意味著價格越高的股票,對指數價格的影響越大。

標普500指數(SPX500)
與道瓊斯指數不同,標普500是一個流動股票加權指數。這意味著其成分股對指數價格的影響大小取決於其市值和流動性(例如公司公開交易股票的百分比)。

英國富時100指數(UK100)
富時指數由倫敦股票交易所內流通的100家市值最高的公司股票組成。該指數是市值加權的,意味著其價格與其成分公司的市值成正比。同時公司越大,其股票價格對指數價格的影響就越大。

德國DAX指數(GER40)
德國DAX指數由德國法蘭克福股票交易所的40隻主要股票組成。因此,它與美國的道瓊斯工業平均指數有些相像。

澳大利亞ASX 200指數(AUS200)
該指數由在澳大利亞股票交易所交易的股票組成,是一隻市值加權指數。因此,擁有更大市值的成分公司對指數價格的影響就更大。

美國納斯達克指數(NAS100)

除了道瓊斯和標普500指數,納斯達克指數也是一隻在美國備受關註的指數。該指數由100家在資訊科技方面極具影響力的公司組成。

法國CAC 40指數(FRA40)
法國CAC指數涉及在法國巴黎證券交易所交易的40隻股票。其成分股由一個獨立的委員會每季度從100隻具有最高流通股市值的股票(也即公開交易的股票中具有最高市值的公司)中選出。

歐洲Stoxx 50指數(ESTX50)
該指數誕生於1998年,由歐元區內50家最大的公司組成,旨在「反映歐元區行業領導者的藍籌股表現」。

日經225指數(JPN225)
日經225指數是東京股票交易所內的主要股票指數,其地位與美國道瓊斯工業平均指數類似。事實上,在1975年到1985年,它曾被譽為「日經道瓊斯股票平均價格指數」。

英文學習 10-1


10-1-1 單字練習

dizzy adj. 暈眩的
I felt dizzy when I stood up quickly.

headache n. 頭痛
Tina had a headache after studying for three hours.

sore throat n. 喉嚨痛
Dad doesn't feel well; he has a sore throat.

fever n. 發燒
My little brother took a day off because of a fever.

runny nose n. 流鼻水
My sister and I both have a runny nose.

sneeze v. 打噴嚏
Angel couldn't stop sneezing when she cleaned her room.

cough v. 咳嗽
Cover your mouth when you cough.

flu n. 流行性感冒
Mike has the flu, so he can't go to school.


10-1-2 對話練習

Narrator:
In the doctor's office

Doctor:
What's wrong with you today, Mr. White?

Mr. White:
Doctor, I feel very sick today.

Mr. White:
I am not only dizzy but also very tired.

Mr. White:
I have a headache and a sore throat.

Mr. White:
I think I have a fever.

Doctor:
Do you have a runny nose?

Mr. White:
Yes. And I sneeze a lot.

Mr. White:
I am not only sneezing but also coughing.

Doctor:
You probably have the flu.

Doctor:
I'll give you some medicine.

Doctor:
You should not only drink lots of water but also get some rest.

Doctor:
Don't worry. You will be fine in a few days.

10-2-1 單字練習

vomit v. 嘔吐
Nina vomited when she had the flu.

diarrhea n. 腹瀉
The seafood I ate last night made me have diarrhea.

serious adj. 嚴重的
Susan's headache became serious.

stomachache n. 胃痛
Josh ate too much; now he has a stomachache.

Japanese adj. 日本的
My parents like to eat Japanese food.

sushi n. 壽司
I had sushi for dinner last night.

sashimi n. 生魚片
Fresh sashimi tastes great.


10-2-2 對話練習

Narrator:
In the doctor's office

Doctor:
How are you today?

Janet:
I vomited this morning.

Janet:
Last night, I had not only diarrhea but also a serious stomachache.

Doctor:
What did you eat yesterday?

Janet:
I went to a Japanese restaurant with my friends.

Janet:
I ate not only sushi but also sashimi.

Janet:
What's wrong with me?

Doctor:
Maybe the sashimi wasn't very fresh.

Doctor:
Just take some medicine and drink a lot of water.

Doctor:
And don't go to that restaurant again!


10-3 文法 GRAMMR

Her brother is not only handsome but also hardworking.

The girls are not only students but also dancers.

The sashimi is not only fresh but also delicious.


10-4 閱讀練習 Reading

Chocolate - Not Just a Dessert!

Did you know that chocolate is not only tasty but also good for you? Chocolate was discovered around 1500 B.C., and people have used it as a medicine ever since.

Thousands of years ago, people in the Americas used cocoa beans to make a medicine drink. It was like hot chocolate, but it didn't have any sugar. They used it for fevers, coughs, and stomachaches. When the first European explorers came to the Americas, they were sick from their long trip. The Indians gave them hot chocolate to make them feel better. The explorers loved the drink, so they took cocoa beans back to their countries. "Try this," they said. "It's great!" everyone agreed.

In the 1700s, people started adding milk to hot chocolate. The queen of England's doctor made a special drink for her. Later, he sold his recipe, and people used his idea to make chocolate candy. What a great idea!

Modern doctors still think that chocolate can be good for you, but only have one or two pieces at a time. Today, chocolate has a lot of sugar, so eating too much chocolate can make you feel sick. Isn't that strange?

外匯貨幣對介紹 FOREX Currencies



全球貨幣以美元(USD)為交易中心其他交易量較大的有 歐元(EUR)英鎊(GBP)日幣(JPY)法郎(CHF)加幣(CAD)澳幣(AUD)紐幣(NZD)

精選文章

三國演義 - 第一回 宴桃園豪傑三結義 斬黃巾英雄首立功

三國演義 - 第一回 (頁籤版) 三國演...