答案1
这是给你一个开始。图片是图片的部分复制品找到这里。在我看来,唯一有点微妙的点是开头的剪辑,因为必须拨出一个适当的方向。
\documentclass[tikz,border=3.14mm]{standalone}
\usetikzlibrary{arrows.meta,bending,decorations.pathreplacing}
\begin{document}
\begin{tikzpicture}[font=\sffamily,very thick,sc/.style={circle,draw,inner sep=1.5pt}]
\begin{scope}
\clip (4,0) arc(0:-360:4) (0,0) circle[radius=5cm];
\fill[gray!50,even odd rule] circle[radius=5cm] circle[radius=4cm]
foreach \X in {1,...,6} {(\X*60:4) circle[radius=0.5cm]};
\end{scope}
\foreach \X [count=\Y starting from 0] in {A,B,C,A,B,C} {
\path(180-60*\Y:4) node[circle,draw] (n\Y) {\X};
}
\foreach \Y in {0,...,4}
{\draw[dashed,-{Stealth[bend]}] (180-72*\Y-5:3)
arc(180-72*\Y-5:180-72*\Y-67:3);}
\fill[gray!70] circle[radius=1.8cm];
\foreach \X in {1,...,20}
{\draw (\X*18:2) circle[radius=0.12cm];}
\draw (n1) -- (120:5.8) coordinate (aux) -- (-6.7,0|-aux) node[sc,left] (c1){};
\draw (n3) -- (0:5.8) |- ([yshift=8mm]c1.east) node[sc,left] (c3){};
\draw (n5) -- (-120:5.8) -| ([yshift=-8mm,xshift=5mm]c1.east)
-- ++(-0.5,0)node[sc,left] (c5){};
\draw[decorate,decoration={brace,mirror,raise=2pt}] (c3.north west) -- (c5.south west)
node[midway,left=3pt,align=right]{3 Phase\\ input};
\draw (n0) -| (-5.8,-5.8) node[sc,fill] {} -- ++ (-1,0)
node[left,sc,label=left:Common] (Common){};
\draw (n4) -- (-60:5.6) coordinate(aux) -- (aux|-Common) node[sc,fill]{};
\draw (n2) -- (60:5.6) coordinate(aux) -- (aux-|6,0) |- (Common);
\end{tikzpicture}
\end{document}
答案2
几个小时后,我能够做一些类似于我最初想要做的事情。谢谢你的帮助。我依靠以下链接中提供的示例:电机电路的横截面
\documentclass[tikz,border=20pt]{standalone}
\usepackage{mathptmx}
\usepackage[outline]{contour}
\usetikzlibrary{calc,arrows.meta,patterns,backgrounds}
\begin{document}
\begin{tikzpicture}[>={Stealth[inset=0,length=5pt]}]
% Definitions
\def\rotationAngle{35}
\def\rotorRadius{1.4}
\def\statorRadius{2}
\def\Current[#1][#2](#3)(#4)#5#6[#7]{%1: Angle 2: radious 3:type 4:ID 5:color 6:Label text 7:polar text position.
\draw (#1:#2)++(#7:0.5) node {\contour{white}{#6}};
\begin{scope}[shift={(#1:#2)}, rotate=#1-90,transform shape]
\node[inner sep=0,minimum size=13pt](I#4) at (0,0){};
\ifnum#3=0 \draw[#5,thick](45:5pt)--(-135:5pt) (-45:5pt)--(135:5pt) (0,0) circle (5pt); \fi
\ifnum#3=1 \draw[#5,thick](0,0) circle (5pt);\fill[#5](0,0) circle (2pt); \fi
\end{scope}
}
%Drawing Stator
\Current[0][\statorRadius](1)(1){blue}{$i_{as}$}[-90]
\Current[60][\statorRadius](0)(2){green}{$i_{cs}$}[-30]
\Current[120][\statorRadius](1)(3){red}{$i_{bs}$}[30]
\Current[180][\statorRadius](0)(4){blue}{$i_{as}$}[90]
\Current[240][\statorRadius](1)(5){green}{$i_{cs}$}[150]
\Current[300][\statorRadius](0)(6){red}{$i_{bs}$}[210]
\begin{scope}[on background layer]
\draw[thick, even odd rule, fill=black, fill opacity=0.2]
let \p1 = (I1.south west),
\n1 = {veclen(\x1,\y1)},
\n2 = {atan2(\y1,\x1)}
in (\n2:\n1)
arc (\n2:60-\n2:\n1)--(I2.north east)--(I2.north west)--(I2.south west)
arc (60+\n2:120-\n2:\n1)--(I3.north east)--(I3.north west)--(I3.south west)
arc (120+\n2:180-\n2:\n1)--(I4.north east)--(I4.north west)--(I4.south west)
arc (180+\n2:240-\n2:\n1)--(I5.north east)--(I5.north west)--(I5.south west)
arc (240+\n2:300-\n2:\n1)--(I6.north east)--(I6.north west)--(I6.south west)
arc (300+\n2:360-\n2:\n1)--(I1.north east)--(I1.north west)--(I1.south west)
(0,0) circle (3);
\draw[->, thick](I1.north)-- ++(0:1.5) node[anchor=180]{$as$};
\draw[->, thick](I3.north)-- ++(120:1.5) node[anchor=300]{$bs$};
\draw[->, thick](I5.north)-- ++(240:1.5) node[anchor=60]{$cs$};
\draw[thick]
(I1.south)--(I4.south)
(I2.south)--(I5.south)
(I3.south)--(I6.south)
(I2.north)-- ++(60:1)
(I4.north)-- ++(180:1)
(I6.north)-- ++(300:1);
\end{scope}
%Drawing Rotor
\contourlength{0pt}
\begin{scope}[rotate=\rotationAngle]
\Current[0][\rotorRadius](1)(7){blue}{$i_{ar}$}[-100]
\Current[60][\rotorRadius](0)(8){green}{$i_{cr}$}[-40]
\Current[120][\rotorRadius](1)(9){red}{$i_{br}$}[20]
\Current[180][\rotorRadius](0)(10){blue}{$i_{ar}$}[80]
\Current[240][\rotorRadius](1)(11){green}{$i_{cr}$}[140]
\Current[300][\rotorRadius](0)(12){red}{$i_{br}$}[200]
\begin{scope}[on background layer]
\draw[thick, fill=black, fill opacity=0.2]
let \p1 = (I7.north west),
\n1 = {veclen(\x1,\y1)},
\n2 = {atan2(\y1,\x1)}
in (\n2:\n1)
arc (\n2:60-\n2:\n1)--(I8.south east)--(I8.south west)--(I8.north west)
arc (60+\n2:120-\n2:\n1)--(I9.south east)--(I9.south west)--(I9.north west)
arc (120+\n2:180-\n2:\n1)--(I10.south east)--(I10.south west)--(I10.north west)
arc (180+\n2:240-\n2:\n1)--(I11.south east)--(I11.south west)--(I11.north west)
arc (240+\n2:300-\n2:\n1)--(I12.south east)--(I12.south west)--(I12.north west)
arc (300+\n2:360-\n2:\n1)--(I7.south east)--(I7.south west)--(I7.north west);
\draw[->, thick, shorten >=10pt](I7.north)-- ++(0:2.4) node{$ar$};
\draw[->, thick, shorten >=10pt](I9.north)-- ++(120:2.4) node{$br$};
\draw[->, thick, shorten >=10pt](I11.north)-- ++(240:2.4) node{$cr$};
\draw[thick]
(I7.south)--(I10.south)
(I8.south)--(I11.south)
(I9.south)--(I12.south)
(I8.north)-- ++(60:1.6)
(I10.north)-- ++(180:1.6)
(I12.north)-- ++(300:1.6);
\end{scope}
\end{scope}
\draw[->,thick] (0:0.7) arc (0:\rotationAngle:0.7) node[pos=0.5, anchor=west] {$\theta_{r}$};
\end{tikzpicture}
\end{document}