找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6626|回復: 15
收起左側

用arduino已知等腰三角形三邊求角度

[復制鏈接]
ID:165395 發(fā)表于 2017-3-9 13:48 | 顯示全部樓層 |閱讀模式
新手,想實現(xiàn)用arduino已知等腰三角形三邊求角度
有大神會寫這個程序么,感覺自己沒什么思路
回復

使用道具 舉報

ID:165395 發(fā)表于 2017-3-9 13:49 | 顯示全部樓層
頂起,不要讓帖子沉了呀
回復

使用道具 舉報

ID:151348 發(fā)表于 2017-3-9 14:06 | 顯示全部樓層
使用math.h吧,http://www.torrancerestoration.com/bbs/dpj-33486-1.html也給出了math.h
回復

使用道具 舉報

ID:165395 發(fā)表于 2017-3-9 16:02 | 顯示全部樓層
頂起,別讓帖子沉了
回復

使用道具 舉報

ID:151348 發(fā)表于 2017-3-9 19:58 | 顯示全部樓層

余弦定理
回復

使用道具 舉報

ID:165395 發(fā)表于 2017-3-11 08:50 | 顯示全部樓層
謝謝大神,但還是有點不明白
回復

使用道具 舉報

ID:123289 發(fā)表于 2017-3-11 10:38 | 顯示全部樓層
此問主要難點是需要進行反三角運算。
當然先算出正切值很方便,正弦值也不難。下面說求角度的方法:
方法1:做一個三角函數(shù)表,用查表的方式求出答案,查不到的細節(jié),用插值的方法求出。
方法2:直接找數(shù)學函數(shù)庫,調(diào)用。
方法3:很難,需要數(shù)學功底。涉及微積分、牛頓疊代等……,不提了。
回復

使用道具 舉報

ID:165395 發(fā)表于 2017-3-11 21:50 | 顯示全部樓層
yzwzfyz 發(fā)表于 2017-3-11 10:38
此問主要難點是需要進行反三角運算。
當然先算出正切值很方便,正弦值也不難。下面說求角度的方法:
方法 ...

嗯嗯,好滴,大神我能加你QQ么
回復

使用道具 舉報

ID:165395 發(fā)表于 2017-3-11 21:58 | 顯示全部樓層
imxuheng 發(fā)表于 2017-3-9 14:06
使用math.h吧,http://www.torrancerestoration.com/bbs/dpj-33486-1.html也給出了math.h

但是我看三角函數(shù)的參數(shù)只有一個,但是如果用余弦算,不應該是已知三邊然后可求出角的度數(shù),我感覺應該有三個參數(shù)...略迷茫
回復

使用道具 舉報

ID:165395 發(fā)表于 2017-3-11 22:01 | 顯示全部樓層
yzwzfyz 發(fā)表于 2017-3-11 10:38
此問主要難點是需要進行反三角運算。
當然先算出正切值很方便,正弦值也不難。下面說求角度的方法:
方法 ...

我們要做的東西只能已知三邊,然后求角度,感覺不能用正弦定理或求正切,我感覺應該用余弦定理
,但是我看那個math.h文件中關于余弦函數(shù)的形參只有一個,按理說不應該是三個么,略迷茫
回復

使用道具 舉報

ID:151348 發(fā)表于 2017-3-11 22:42 | 顯示全部樓層
怎么會有3個呢,形參只有角度,也就是你需要求的,當然根據(jù)3邊只能求出余弦值,zai根據(jù)余弦值查表得到角度。也不知道你怎么會讓單片機求角度,加速度傳感器?
回復

使用道具 舉報

ID:170069 發(fā)表于 2017-3-12 14:01 | 顯示全部樓層
正弦定理然后加上MATH.H就可以了
回復

使用道具 舉報

ID:155507 發(fā)表于 2017-3-12 15:08 | 顯示全部樓層
已知一個等腰三角形三個邊ABC的長度,AB=75,AC=75,BC=19,求這個等腰三角形的頂角角度是多少(不是直角等腰三角形)

cosA=(AB2+AC2-BC2)/(2AB×AC) =(752+752-192)/(2×75×75)=0.96791111111111111111111111111111
A=14.554027753139177660897660110218°

cosA=1 - BC2/2AB2

  1. //sides of a triangle 等腰三角形的三邊都知道求角度?
  2. const int a = 75; // 等腰三角形的等邊
  3. const int c = 19;
  4. float A;  // 其余弦值

  5. //angles of the triangle
  6. float C; // 等腰三角形的頂角角度


  7. void setup() {
  8.         // put your setup code here, to run once:
  9.         // initialize the serial communication:
  10.         Serial.begin(9600);
  11. }

  12. void loop() {
  13.         // put your main code here, to run repeatedly:

  14.         A = 1.0 - ((float)(c*c)/ (float)(2*a*a));
  15.         Serial.println(A);  // 其余弦值 cos(A)
  16.         C = acos(A);
  17.         Serial.println(C);  // 等腰三角形的頂角弧度
  18.         C = C/3.141592654 *180;
  19.         Serial.println(C);  //等腰三角形的頂角角度
  20.         delay(5000);
  21. }

復制代碼
回復

使用道具 舉報

ID:123289 發(fā)表于 2017-3-13 13:12 | 顯示全部樓層
還是數(shù)學基礎,用勾股定理,正切,正弦,余弦輪換不成問題,也有許多三角輪換公式可用。
回復

使用道具 舉報

ID:165395 發(fā)表于 2017-3-31 21:36 | 顯示全部樓層
angmall 發(fā)表于 2017-3-12 15:08
已知一個等腰三角形三個邊ABC的長度,AB=75,AC=75,BC=19,求這個等腰三角形的頂角角度是多少(不是直角等腰三 ...

好厲害,謝謝大神
回復

使用道具 舉報

ID:165395 發(fā)表于 2017-3-31 21:36 | 顯示全部樓層
yzwzfyz 發(fā)表于 2017-3-13 13:12
還是數(shù)學基礎,用勾股定理,正切,正弦,余弦輪換不成問題,也有許多三角輪換公式可用。

嗯吶
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表